【问题标题】:Query Json how to get elements inside must array查询Json如何获取必须数组中的元素
【发布时间】:2021-02-19 04:30:46
【问题描述】:

我想在 must 数组上获取元素。我有这样的查询

{
  "from": 0,
  "query": {
    "bool": {
      "must": [
        {
          "query_string": {
            "analyze_wildcard": true,
            "default_operator": "and",
            "fields": [
              "entityStatusDesc"
            ],
            "query": "$entityStatusDesc"
          }
        },
        {
          "query_string": {
            "analyze_wildcard": true,
            "default_operator": "and",
            "fields": [
              "instanceStartTime"
            ],
            "query": "$instanceStartTime"
          }
        },
        {
          "match": {
            "model": {
              "query": "instance"
            }
          }
        }
      ]
    }
  },
  "size": 10,
}

我试过了;

JObject o = JObject.Parse(json);

        var acme = o.SelectToken("$.must[0]");

但是没用。我想通过 must[0] 调用来获取这部分 json;

{
          "query_string": {
            "analyze_wildcard": true,
            "default_operator": "and",
            "fields": [
              "entityStatusDesc"
            ],
            "query": "$entityStatusDesc"
          }
        },

是否有任何不同的方式来获得必须的区域?如果有人可以帮助我,我将不胜感激。谢谢。

【问题讨论】:

    标签: c# json elasticsearch json.net json-query


    【解决方案1】:

    其中一个选项是提供完整路径:

    var acme = o.SelectToken("$.query.bool.must[0]");
    

    或者只使用索引器:

    var acme = o["query"]["bool"]["must"][0];
    

    【讨论】:

    • @Orhano95 你能接受大师的回答吗?这样,这篇文章就可以用作未来重复的链接——Guru 也获得了一些互联网声誉;)
    猜你喜欢
    • 1970-01-01
    • 2013-11-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多