在反序列化一些json数据的过程中,有些数据根本没有办法反序列化,因为json数据的key值是动态的,另外还有一些key值是数字的,也没有办法反序列化到c# 类。
反序列化是没希望,但总可以读出来吧,寒, 要不然就要换掉Newtonsoft了。
举例:
string str = "{\"3\":123,body:456,list:{title:'abc',body:'what'}}";
JObject o = JObject.Parse(str);
IEnumerable<JProperty> properties = o.Properties();
foreach (JProperty item in properties)
{
Console.WriteLine(item.Name + ":" + item.Value);
}
如果str 是个数组,则可以相应用JArray a = JArray.Parse(str); 来处理,不过目前还不知道无限包含子集怎么处理。
比如
string str = "{\"3\":123,body:456,list:{title:'abc',body:{a:{a:{a:{a:{a:'......'}}}}}}}";