作为我的情况的基本示例,假设我有一个具有两个属性的类(UserInfo)。一个是用户名字符串,另一个名为Demographics是字典。该类标有DataContract,道具标有DataMember。我在我的WCF服务中有一个OperationContract,它将我的对象作为JSON返回。当请求命中并返回我的对象时,它被序列化为:
{"UserName":"Bobby", "Demographics" : [{"Key": "1", "Value": "Blah1"},{"Key": "2", "Value": "Blah2"}]}
人口统计数据作为数组返回。我希望它作为列表返回。意味着应该删除括号,如下所示:
编辑我错误地写了那个对象
{"Username": "Bobby",
"Demographics": {
"Key1": {
"Value": "Blah1"
},
"Key2": {
"Value": "Blah2"
}
}
}
我的经营合同是:
[OperationContract]
[WebInvoke(UriTemplate = "GetNewUserFields",
ResponseFormat = WebMessageFormat.Json,
Method = "GET"),
Description("Get the Fields needed for a new user")]
UserInfo GetNewUserFields();
有没有办法做到这一点?我会发布直接代码示例,但是我序列化的类实际上比我描述的要复杂得多,这里发布的返回结果将是一堆乱七八糟的数据。
感谢您提供任何帮助。