WCF传输JSON问题(急)
接口定义
[OperationContract]
[WebInvoke(RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, Method = "POST", BodyStyle = WebMessageBodyStyle.WrappedRequest, UriTemplate = "/Send")]
[Description("信息发布")]
Model.Message.Task Send(string UserName, string Password, object Data)
接口实现
public Model.Message.Task Send(string UserName, string Password, object Data)
{
//根据用户名和密码解析Data(Data是JSON字符串,不同的用户名和密码Data内容不同)
}
客户端提交示例1
{
"UserName":"test",
"Password":"123456",
"Data":{"a":"1"},
}
客户端提交示例2
{
"UserName":"test",
"Password":"123456",
"Data":{"a":"1","b":"2"},
}
客户端提交示例3
{
"UserName":"test",
"Password":"123456",
"Data":{"c":"3"},
}
.........
WCF定义接口如何指定一个参数为匿名类型,使用Object类型好像不行,最终想要达到的目的是
public Model.Message.Task Send(string UserName, string Password, object Data)
{
//例如示例1,Data = "Data":{"a":"1"};
//例如示例2,Data = "Data":{"a":"1","b":"2"};
//例如示例3,Data = "Data":{"c":"3"}
然后根据用户名和密码的不同使用不同的对象来序列化Data
}