繁体   English   中英

NEST2:如何一次指定数据库索引名称

[英]NEST2: How to specify the db index name once

我们的C#WebAPI应用程序使用ElasticSearch数据库。 我们正在使用NEST2访问数据库。

代码中的所有NEST2查询都指定数据库索引名称,此处为示例:

public TestQuery[] GetAllDocuments()
{
    var readRecords = ec.Search<TestDocument>(s => s
        .Index("my-index-name")
        .Query(q => q.
            QueryString(qs => qs.Query("*")))).Documents;

    return readRecords.ToArray();
}

有时我们忘记在查询中指定索引名称...问题不会立即显现,因为API可以按预期工作,并且一切都很好...仅当我们在其中添加另一个包含一些类似文档的索引时,我们才会看到问题

NEST2初始化后是否可以一次全部指定索引名称? 这样一来,我就避免了要记住在每个查询中插入它的负担

您正在寻找ConnectionSettings上的.DefaultIndex方法。

var settings = new ConnectionSettings()
    .DefaultIndex("defaultindex");

希望能帮助到你。

您应该看看别名: 索引别名

因此,当您拥有一个包含类似文档的新索引时,可以在创建索引后添加一个别名,并在索引名称的查询中指定别名。 这样,您可以使用相同的名称查询1到多个索引。 希望能帮助到你! 如果您需要更多信息,请写评论。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM