Elasticsearch.NET 版本 7 - 如何创建索引

Nen*_*nad 9 c# nest elasticsearch.net

在 Elasticsearch.NET 6.x 中,可以使用以下IElasticClient方法创建索引:

var response = elasticClient.Create(
                    "my-index-name",
                    index =>  index .Mappings(
                        ms => ms.Map<MyDocumentType>(
                            x => x.AutoMap()
                        )
                    )
                );
Run Code Online (Sandbox Code Playgroud)

在 Elasticsearch.NET 版本 7 中删除了方法。

Nen*_*nad 17

在 Elasticsearch.NET 版本 7 中,与索引操作相关的方法已移至IndicesNamespace,因此IndexExists方法已移至:

var response = elasticClient.Indices.Create(IndexName,
                    index => index.Map<ElasticsearchDocument>(
                        x => x.AutoMap()
                    ));
Run Code Online (Sandbox Code Playgroud)

另请注意,该Map(...)方法不再嵌套在Mappings(...)方法内部。原因是Elasticsearch服务器版本 7 不支持每个索引的多种类型(请参阅删除映射类型),因此Map每个索引一种方法就足够了。

同样,不同的方法已移动到它们自己的命名空间:

  • 图形
  • 数据库
  • 节点
  • 等等...