【发布时间】:2012-11-21 11:57:19
【问题描述】:
我有以下代码
[DataContract]
public class DeviceParam
{
public long ID { get; set; }
[DataMember]
public string Key { get; set; }
[DataMember(EmitDefaultValue = false)]
public string Value { get; set; }
[DataMember(Name = "param", EmitDefaultValue = false)]
public List<DeviceParam> Param { get; set; }
}
问题是,它产生了:
{"Key":"Param1","param":[{"Key":"ParamChild1","Value":"1"}]}]
我正在努力实现所需的格式:
{"Param1": {"ParamChild1" : "1" }}
我无法做到这一点,因为该类包含自身的类。并且似乎 WCF 不喜欢我为实现它所做的所有修改。
使用 WCF 输出 JSON 实现这一点的最佳方法是什么?
谢谢!
【问题讨论】:
-
但是你想要的格式不是json,我认为你必须创建自己的格式化程序
-
@DotNeter - 为什么不是这个 JSON??
-
根据json.org,您必须指定键及其值,例如:名称:“X先生”,但您想要的格式不匹配,您没有放键。