【发布时间】:2014-08-10 16:51:21
【问题描述】:
我无法找到从 JObject 获取 json 数组列表的正确方法。
数组内的_name元素应该等于foo。
这是示例 json:
{
"doc": [{
"bob": [{
"tom": [{
"frank": [{
"category": [{
"_name": "foo",
"letters": "abc"
},
{
"_name": "foo",
"letters": "def"
},
{
"_name": "foo",
"letters": "ghi"
},
{
"_name": "foo",
"letters": "jkl"
}]
}]
}]
}]
}]
}
到目前为止,这是我的代码:
JObject o = JObject.Parse(File.ReadAllText(@"D:/Client/data.json"));
var results = from x in o["doc"].Children()
where x["_name"].Value<string>() == "foo"
select x;
我收到此错误:
"Value cannot be null.\r\nParameter name: source"
如何获得一个列表,其中每个元素都是包含“_name”和“letters”的数组?
【问题讨论】:
-
我的意思是“_name”而不是“_id”,已修复
-
您真的打算让
doc.bob成为一个数组,其中包含一个具有tom属性的对象,而该对象具有frank属性? -
这不是我的 JSON,它来自其他地方。我简化了它。我每隔几秒钟就会得到它作为 Json 馈送。