【问题标题】:Nest Client c# 7.0 for elastic search removing AliasesNest Client c# 7.0 用于弹性搜索删除别名
【发布时间】:2019-10-08 17:08:56
【问题描述】:

因此,随着 Elastic Search 6 的最新更新,C# 客户端也得到了升级。但是我不知道如何使用新的 Client Nest 7 以新的方式编写这段代码。我只需要重写这段代码

            var indexExists = Client.IndexExists(CurrentAliasName).Exists;

        Client.Alias(aliases => {
            if (indexExists)
            {
                var oldIndices = Client.GetIndicesPointingToAlias(CurrentAliasName);
                var indexName = oldIndices.First().ToString();

                //remove alias from live index
                aliases.Remove(a => a.Alias(CurrentAliasName).Index("*"));
            }
            return aliases.Add(a => a.Alias(CurrentAliasName).Index(CurrentIndexName));
        });

【问题讨论】:

    标签: c# elasticsearch nest


    【解决方案1】:

    API 已移至 API 分组中

    var client = new ElasticClient();   
    var CurrentAliasName = "alias_name";
    var CurrentIndexName = "index_name";
    
    var indexExists = client.Indices.Exists(CurrentAliasName).Exists;
    
    client.Indices.BulkAlias(aliases =>
    {
        if (indexExists)
        {
            var oldIndices = client.GetIndicesPointingToAlias(CurrentAliasName);
            var indexName = oldIndices.First().ToString();
    
            //remove alias from live index
            aliases.Remove(a => a.Alias(CurrentAliasName).Index("*"));
        }
        return aliases.Add(a => a.Alias(CurrentAliasName).Index(CurrentIndexName));
    });
    

    您还可以参考Nest.7xUpgradeAssistant 包并继续使用与 6.x 中相同的方法来帮助迁移到 7.x。您将收到带有消息的编译器警告,指示新 API 方法的位置。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-09-08
      • 1970-01-01
      • 1970-01-01
      • 2020-09-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多