gpt4 book ai didi

带有 Newtonsoft.JSON 的 JsonPath

转载 作者:行者123 更新时间:2023-12-01 01:52:13 26 4
gpt4 key购买 nike

我尝试了将近一个小时的不同方法,但我不明白;(

我的 JSON 对象是这样的:

"typeOfHair": {
"value": [
{
"code": "Dry Hair",
"values": [
{
"value": "DryHair",
"language": "en"
},
{
"value": "TrockenesHaar",
"language": "de"
}
]
},
{
"code": "Any Type of Hair",
"values": [
{
"value": "AnyTypeOfHair",
"language": "en"
},
{
"value": "JedenHaartyp",
"language": "de"
}
]
}
]
}

我的任务是使用 Newtonsoft.JSON 获取语言为“de”的所有值。
我目前的做法是:
JsonObject.SelectTokens("typeOfHair.value.values[?(@.language == 'de')].value").ToList()

有人可以帮我弄这个吗?

亲切的问候

最佳答案

你很亲近。你需要考虑外value阵列 typeOfHair.value[]通过使用 JsonPATH通配符[*] :

var values = JsonObject.SelectTokens("typeOfHair.value[*].values[?(@.language == 'de')].value")
// Convert from JValue to string
.Select(v => (string)v)
// Save in a list
.ToList();

而且,结果是:
["TrockenesHaar","JedenHaartyp"]

sample fiddle .

关于带有 Newtonsoft.JSON 的 JsonPath,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43458453/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com