鉴行志

A blogging framework for hackers.

使用javascript方法给后台WCF服务直接post对象

| Comments

一直没有弄清楚,WCF如何使用post方法自动反序列化对象,看了几篇文章,终于搞清楚了怎么使用post方法进行对象传值。

下面直接使用WCF特性做元数据的自定义转换

定义元数据契约定义:

[DataContract(Name = "person")]
public class person
{
[DataMember(Name="Name")]
public string Name
{
get;
set;
}
[DataMember(Name = "Age")]
public int Age
{
get;
set;
}

服务描述:

[OperationContract]
[WebInvoke(UriTemplate = "/doit2",ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped)]
bool testpost(person p);

注意使用Post方法,post的BodyStyle必须为Wrapped,否则不能正常取到反序列化后的对象。

Comments