似乎无法将包含布尔属性的动态列表反序列化为布尔值。
我有以下json。
[
{
"Field1": 1,
"Field2": "Test 1",
"Field3": true
},
{
"Field1": 2,
"Field2": "Test 2",
"Field3": false
}
]
当我使用时:
Newtonsoft.Json.JsonConvert.DeserializeObject<List<dynamic>>(jsonString)
我得到Field3 =“ True”或“ False”
绑定到网格或其他控件时,它认为这是“字符串”而不是“布尔值”。
有什么建议么?
因此,我尝试安装LinqPad并弄清楚为什么它适用于vendettamit,但在我的C#应用程序中却不起作用。
这使我想到了有关如何在LinqPad中转储Newtonsoft JObject的文章。
然后我注意到rdavisau使用了以下代码。
JsonConvert.DeserializeObject<ExpandoObject>(jsonString)
但是我正在使用以下代码。
JsonConvert.DeserializeObject<List<dynamic>>(jsonString)
因此,一旦我将代码更改为以下代码。一切正常。
JsonConvert.DeserializeObject<List<ExpandoObject>>(jsonString)
ExpandoObject是我所缺少的。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句