搜索了我的问题并没有找到答案,我有一个如下的JSON文件:
{
"handle":"ABCD",
"Tracks":{
"Design":{
"rating":402
},
"Development":{
"rating":1584,
"reliability":"n/a"
},
"Specification":{
"rating":923,
"reliability":"0.13"
},
"Conceptualization":{
"rating":895
}
}
}
我正在获得json的动态对象:
dynamic dynObj;
dynObj = JsonConvert.DeserializeObject(content);
如何获得" Tracks"的名称?项目?我不知道有多少标签像" Design"我在哪里也不知道他们的名字......
答案 0 :(得分:1)
在您的(动态)方案中,不要使用dynamic
,它没有意义,因为您正在查找有关文档的架构信息,该信息因动态模型而变得不可用。
因此,通过在JSON数据上调用JObject
来获取JObject.Parse
。
然后,获取密钥(取自JObject.Properties
documentation):
foreach (var prop in myJObject.Properties())
{
//returns 'handle' and 'Tracks' for your root object
Console.WriteLine("{0} - {1}", prop.Name, prop.Value);
}
或使用JObject
的枚举器:
foreach (var kvp in myJOBject)
{
Console.WriteLine("{0} - {1}", kvp.Key, kvp.Value);
}