查询json如何获取must数组中的元素

6yjfywim  于 2021-06-10  发布在  ElasticSearch
关注(0)|答案(1)|浏览(459)

我想得到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]call获取json的这一部分;

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

有什么不同的方法来获得必须的地区吗?如果有人能帮助我,我将不胜感激。谢谢。

e4eetjau

e4eetjau1#

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

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

或者直接使用索引器:

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

相关问题