Reg*_*ent 13 .net c# serialization json .net-4.5
我在响应中收到以下JSON结果:
{"result": { "":-41.41, "ABC":0.07, "XYZ":0.00, "Test":0.00 }}
Run Code Online (Sandbox Code Playgroud)
我准备了以下课程进行反序列化:
[DataContract]
public sealed class RpcResponse
{
[DataMember(Name = "result")]
public List<KeyValuePair<string, decimal>> Result { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
但是,当我要使用属性反序列化它时DataContractJsonSerializer
,Result
最终会有零条目.(声明时也不起作用Result
如Dictionary<string, decimal>
)
有没有办法执行此操作DataContractJsonSerializer
?
您的 JSON 字符串表示一个具有属性 Result 的对象,该对象本身就是一个具有 4 个属性的对象:“”、ABC、XYZ 和 Test。要使结果成为 KeyValuePairs 列表,JSON 将如下所示:
{"result": [{ "":-41.41}, {"ABC":0.07}, {"XYZ":0.00}, {"Test":0.00 }] }
Run Code Online (Sandbox Code Playgroud)
请注意,如果您在 Javascript 代码中使用关联数组,它将被序列化为具有属性值对的对象,而不是对象数组。如果这是 JSON 字符串的来源,您可能需要切换到在 JS 中使用普通索引数组来获取正确的 JSON。
归档时间: |
|
查看次数: |
15365 次 |
最近记录: |