【问题标题】:ElasticSearch 6.x and NEST simple queryElasticSearch 6.x 和 NEST 简单查询
【发布时间】:2018-08-13 07:42:09
【问题描述】:

实际上,我是 ElasticSearch 的新手,只是被一个简单的 NEST 查询卡住了。 这是我在 ElasticSearch 中存储数据的类:

public class MyClass
{
        public Guid Id { get; set; }
        public string Name { get; set; }
        public string Language { get; set; }
}

我需要按语言获取文档(例如 Language == "eng") 我使用 NEST 6.x

这里是 SerchDescriptor

searchDescriptor = new SearchDescriptor<MyClass>()
                .Index(indexName)
                .Query(q => q.Term("Language", "eng"));

它产生请求:

{
  "query": {
    "term": {
      "Language": {
        "value": "eng"
      }
    }
  }
}

但正确的要求是

{
  "query": {
    "term": {
      "Language": "eng"
    }
  }
}

如何通过 NEST 获得正确的请求?

【问题讨论】:

    标签: elasticsearch nest


    【解决方案1】:

    两种形式都有效;前者是long form of term query,它接受其他属性,例如boost_name

    NEST 通常将请求类型序列化为长格式,并从长格式反序列化。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-04-27
      • 2015-06-05
      • 2014-03-11
      • 2021-05-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-21
      相关资源
      最近更新 更多