问问题
6627 次
2 回答
3
来自 JSON.NET 的作者:
由于 Json.NET 6.0 使用对 JSONPath 的完全支持来支持 SelectToken,JSONPath 是一种类似于 XPath 的 JSON 查询语言。
JObject o = JObject.Parse(@"{
""Manufacturers"": [
{
""Name"": ""Acme Co"",
""Products"": [
{
""Name"": ""Anvil"",
""Price"": 50
}
]
},
{
""Name"": ""Contoso"",
""Products"": [
{
""Name"": ""Elbow Grease"",
""Price"": 99.95
},
{
""Name"": ""Headlight Fluid"",
""Price"": 4
}
]
}
]
}");
// manufacturer with the name 'Acme Co'
var acme = o.SelectToken("$.Manufacturers[?(@.Name == 'Acme Co')]");
有关博客文章的更多详细信息
于 2015-03-16T16:53:54.980 回答
3
JObject.SelectToken 可以做 XPath 可以做的同样的事情吗?
SelectToken 函数的 Path 参数的语法是什么?
我相信它只支持单个令牌的字符串路径,例如"branches[0].employees[0].name"
如何选择 Name=”Name1” 的所有员工 EmpId?
我不确定SelectToken
能否做到这一点,并且您的问题的限制排除了最常见的解决方案。
我找不到太多关于要传递给 SelectToken 函数的路径字符串的文档(基本上是语法)。
这里的一些文档:
路径由用句点分隔的属性名称和数组索引组成。数组索引可以使用方括号或圆括号。
于 2012-12-09T22:01:43.550 回答