我有一个仅修改单个文档的更新查询。但是我需要传递多个文档作为输入并更新它们。

以前的代码如下。

 var clientProvider = new ElasticClientProvider();
 var response = await clientProvider.Client.UpdateAsync<UserModel>(UserId, d => d
            .Index("user_index")
            .Type("user")
            .Script(script => script
                .Source("ctx._source.isActive = false"))
            );

在此,我想传递多个用户对象,以便可以同时将相同的属性分配给多个文档。

提前致谢。

最佳答案

使用UpdateByQuery(好消息,您需要传递脚本,但您已经掌握了它!)

您在这里有一个例子:
https://github.com/elastic/elasticsearch-net/blob/master/src/Tests/Tests/Document/Multiple/UpdateByQuery/UpdateByQueryApiTests.cs

关于elasticsearch - 在NEST Client- Elastic Search中更新具有相同属性的多个文档,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57356687/

10-11 07:09