【问题标题】:How to use SelectToken with square brackets?如何使用带方括号的 SelectToken?
【发布时间】:2021-09-13 11:11:19
【问题描述】:

如果 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.net json.net linq-to-json


    【解决方案1】:

    使用SelectToken with JSONPath

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

    dotnetfiddle

    【讨论】:

    • 不幸的是,这不适用于["FieldValues", {"3/32[v]": "1856929"}] VB.Net 的语法不同吗?
    • 请原谅对简化 JSON 的混淆。现在我已经在上面粘贴了完整的原始 JSON。
    • @Mec-Eng 我已经根据原始 JSON 更新了答案
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-11
    • 1970-01-01
    • 2022-11-30
    • 1970-01-01
    • 1970-01-01
    • 2012-10-09
    相关资源
    最近更新 更多