【问题标题】:Get Elasticsearch type mapping names with NEST client使用 NEST 客户端获取 Elasticsearch 类型映射名称
【发布时间】:2016-08-27 17:37:26
【问题描述】:

使用 2.0 中,这似乎是不可能的。可以返回映射列表,但不包括名称。例如,我正在使用以下代码来获取映射列表:

var response = elasticClient.GetMapping<object>(mapping => mapping.Index("index.name").AllTypes());

来自 elasticsearch 的原始响应包含映射的名称,但来自 Nest 客户端的响应不包含。它仅包含映射中的属性列表。知道如何使用 Nest 客户端版本 > 2.0 执行此操作吗?

【问题讨论】:

  • 在您的代码行之前放置一个制表符以将其格式化为代码。
  • 你使用的是什么版本的 NEST,你的目标是什么版本的 Elasticsearch?
  • 这看起来像一个错误;我为它添加了一个问题:github.com/elastic/elasticsearch-net/issues/2072

标签: c# elasticsearch nest


【解决方案1】:

在 2019 年使用 NEST 6.4.1 和 Elasticsearch 5.5,可以列出如下类型:

var response = client.GetMapping<object>(mapping => mapping.Index(currentIndex).AllTypes());    
IEnumerable<Nest.TypeName> keys = response.Indices.Values.First().Mappings.Keys;

foreach(var key in keys)
{
    Console.WriteLine(key.ToString());
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-10-27
    • 2015-04-24
    • 2017-12-22
    • 2015-02-19
    • 2018-10-01
    • 2012-09-23
    • 2018-03-01
    • 2021-10-20
    相关资源
    最近更新 更多