C# 带有联合的Json.net JsonPath筛选器

C# 带有联合的Json.net JsonPath筛选器,c#,.net,json.net,jsonpath,C#,.net,Json.net,Jsonpath,我试图动态构建一个JsonPath,以便根据数组中的元素的所有属性来查找它们。使用静态linq查询不是一个选项,因为我的代码需要处理任何数组。我在C#net项目中使用了Newtonsoft.Json 11.0.2 我正在尝试使用下面的JsonPath,但在解析路径索引器时,我得到了一个意外字符:,异常。似乎可以在jsonpath.curiousconcept.com jsonpath测试仪上使用任何流通信版本 非常感谢您的帮助!谢谢 JsonPath:$.arr[?(@.Amount='1000

我试图动态构建一个JsonPath,以便根据数组中的元素的所有属性来查找它们。使用静态linq查询不是一个选项,因为我的代码需要处理任何数组。我在C#net项目中使用了Newtonsoft.Json 11.0.2

我正在尝试使用下面的JsonPath,但在解析路径索引器时,我得到了一个
意外字符:,
异常。似乎可以在jsonpath.curiousconcept.com jsonpath测试仪上使用任何流通信版本

非常感谢您的帮助!谢谢

JsonPath:
$.arr[?(@.Amount='1000'),?(@.Name==''Item A')]

Json:

{
“arr”:[
{
“名称”:“A项”,
“金额”:1000
},
{
“名称”:“B项”,
“数额”:2000
},
{
“名称”:“C项”,
“金额”:3000
},
{
“名称”:“D项”,
“金额”:4000
}
]

}

我假设在jsonpath.curiousconcept.com上忽略了第二部分。正确的JsonPath是:

$.arr[?(@.Amount == 1000 && @.Name == 'Item A')]

谢谢亚历克斯!这是可行的,但我必须从金额值中删除引号。因此,我的示例正确的是
$.arr[?(@.Amount==1000&&&@.Name==Item A')]