C# 当条目数量可变时反序列化Json
我有一个Json文件,看起来像这样C# 当条目数量可变时反序列化Json,c#,json.net,deserialization,C#,Json.net,Deserialization,我有一个Json文件,看起来像这样 { "Item":[ "name": { "type": "value", "type2": "value", "0":{ "InnerType1":"innerValue", "InnerType2":"innerValue", "InnerType3":"innerValue", }, "1":{ "InnerType1":"innerValue", "InnerType2"
{
"Item":[
"name": {
"type": "value",
"type2": "value",
"0":{
"InnerType1":"innerValue",
"InnerType2":"innerValue",
"InnerType3":"innerValue",
},
"1":{
"InnerType1":"innerValue",
"InnerType2":"innerValue",
"InnerType3":"innerValue",
}
},"name2": {
"type": "value",
"type2": "value",
"0":{
"InnerType1":"innerValue",
"InnerType2":"innerValue",
"InnerType3":"innerValue",
}
},"name3": {
"type": "value",
"type2": "value",
"0":{
"InnerType1":"innerValue",
"InnerType2":"innerValue",
"InnerType3":"innerValue",
},
"1":{
"InnerType1":"innerValue",
"InnerType2":"innerValue",
"InnerType3":"innerValue",
},
"2":{
"InnerType1":"innerValue",
"InnerType2":"innerValue",
"InnerType3":"innerValue",
}
},
]
}
我的问题是“0”、“1”和“2”,因为它们并不总是出现在我的数据中,也许有一次我会有42个这种类型的条目。“0”、“1”和“2”的内部类型完全相同,但值不同
所以任何人都有一个想法,因为我只有一个想法,就是手动反序列化,使用for迭代0到x,当我没有数字时停止,但这不是一个好主意
谢谢您,祝您度过愉快的一天只需使用它,您无需担心Json键
IDictionary<string, JToken> jsondata = JObject.Parse(json);
foreach (KeyValuePair<string, JToken> innerData in jsondata) {
Console.WriteLine("{0}=> {1}",innerData.Key, innerData.Value.ToString());
}
IDictionary jsondata=JObject.Parse(json);
foreach(jsondata中的KeyValuePair innerData){
Console.WriteLine(“{0}=>{1}”,innerData.Key,innerData.Value.ToString());
}
JToken是JObject、JArray、JProperty的基类,因此JToken可以轻松处理这些类型