我必须使用Newtonsoft.Json库将该对象解析为List >>对象。
“键”是类型名称(因为“ cups”,“ values”是内部数组值-“ green”,“ black”,“ yellow”)
我不想使用对象序列化,而使用直接类型。
{
"kitchen": {
"types": [
{
"cups": [
"green",
"black",
"yellow"
]
},
{
"mixer": [
"brown"
]
},
{
"plates": [
"white",
"purple"
]
}
]
}
}
这是我写的一个函数,我能够解析内部对象名称在获取值方面陷入了死胡同(用TODO标记)
List<KeyValuePair<string, List<string>>> result = new
List<KeyValuePair<string, List<string>>>();
JsonReader reader = new JsonTextReader(new StringReader(policyContent));
reader.DateParseHandling = DateParseHandling.None;
JObject joResponse = JObject.Load(reader);
JArray array = JArray.Parse(joResponse["kitchen"]["types"].ToString());
foreach (JObject content in array.Children<JObject>())
{
// TODO:
// How do I get the inner array values ?
foreach (JProperty prop in content.Properties())
{
result.Add(new KeyValuePair<string, List<string>>(prop.Name, new List<string>()));
}
}
return result;
任何帮助将不胜感激。
谢谢, 亚尼夫。