是否有一个JSON库C#像C++ SDK休息网站:: JSON ::值,可以反序列化JSON不明
检查以前的答案(3100),无法找到该是否有一个JSON库C#像C++ SDK休息网站:: JSON ::值,可以反序列化JSON不明
问题的直接的答案:
当试图从服务器API解析数据时,数据具有许多不同的布局,具体取决于与请求的资源相关联的数据。
有些时候,答案是一些入口点的非结构化数据的集合,这些是APP需要解析的。
的Json.NET JSON框架.NET从Newtonsoft要求已经定义匹配“以前知道结构”针对序列化JSON被反序列化的先决条件一流。
显然为序列化和反序列化任何.NET对象并与.NET对象工作,但不序列化和反序列化JSON在JSON对象,并用像用C++休息那些对象的工作SDK web :: json :: value类。
有些请求已结构化信息,并解决了定义.NET对象和反序列化它们,但当索要额外的资源数据的答案可能是(以及许多其他):
[
null
]
或
[
{
"item": "value"
}
]
或
[
{
"item": "value"
},
{
"item2": {}
},
{
"item3": {
"feature": "string feature",
"feature2": {
"object feature": "large object (replaced by string for simplicity)"
}
}
},
{
"item4": "large object (replaced by string for simplicity too)"
}
]
任何人都可以知道是否有一种方法(招,破解版)要做到这一点或方式来支持通用的JSON对象可用于序列化,反序列化和查询,设置,修改JSON对象?
您可以使用ExpandoObject
:
var converter = new ExpandoObjectConverter();
dynamic obj = JsonConvert.DeserializeObject<ExpandoObject>(json, converter);
抛出异常: System.InvalidCastException:指定的转换无效。 at(wrapper castclass)System.Object:__ castclass_with_cache(object,intptr,intptr) at Newtonsoft.Json.JsonConvert.DeserializeObject [T](System.String value,Newtonsoft.Json.JsonConverter []转换器) – TrustworthySystems
什么是json你提供给它的输入? – CodingYoshi
第一个(当没有额外信息时): ' json =“[null]”; ' – TrustworthySystems
可以使用Newtonsoft解析在JObject/JArray JSON字符串,而无需预定义的C#类 – Jason
反序列化和序列化是一个格式转换和从对象,解析是为json,并且newtonsoft可以解析json,并且可以查询json而不会将其放入对象中 –
修改了您的问题以取出另一个库的请求,因为特别迂回的人会将其视为offtopic :) –