首页 > 解决方案 > 如何使用带方括号的 SelectToken?

问题描述

如果 JToken 的名称包含方括号,我如何获取值或制作 SelectToken?tmpJToken.Value(Of String)("3/32[v]")或者tmpJToken.SelectToken("3/32[v]")

我必须转义方括号吗?

JSON 看起来像:

["BeginOfEnumerable",
  [
    {
        "Classification": [
            "/",
            "/Document/"
            
        ],
        "FieldValues": {
            "/0": "8854723",                
            "/3/32[v]": "1856929"                
        },
        "Key": "urn:key:Document:1856929"
    }
],
"EndOfEnumerable"]

标签: vb.netjson.netlinq-to-json

解决方案


SelectToken 与 JSONPath 一起使用

Dim result = tmpJToken.SelectToken("$..FieldValues.['/3/32[v]']")

dotnetfiddle


推荐阅读