我想使用UpdateByQuery()方法
如果我理解得很好,我需要给一个查询和一个select。
例如,我想在我的proj类中将name属性更改为"welcome“
我开始写我的方法,但我不知道在那之后该做什么?
client.UpdateByQuery<proj>(q => q.Query(rq => rq.Term(f => f.idProjet, projetEntity.IdProjet)));
我在intellisense帮助器中看不到Update fluent方法
你能帮我个忙吗?
发布于 2017-02-13 22:32:06
您需要使用Script
方法。这个例子应该是可行的:
var scriptParams = new Dictionary<string, object> {{"newName", "welcome"}};
client.UpdateByQuery<proj>(q => q
.Query(rq => rq.Term(f => f.idProjet, projetEntity.IdProjet))
.Script(script => script
.Inline("ctx._source.name = newName;")
.Params(scriptParams)));
要运行此示例,您必须在elasticsearch.yml
中设置script.inline: true。为了避免这种情况,您必须使用File()
方法而不是Inline()
。
https://stackoverflow.com/questions/42210930
复制相似问题