当我执行索引呼叫时,如果已存在具有相同ID的文档,是否有办法使呼叫失败?
我看到发出警告,但原始文件仍然被覆盖。
答案 0 :(得分:1)
您可以使用_create
端点或在索引文档时指定OpType.Create
来实现此目的
var client = new ElasticClient();
// using OpType.Create
client.Index(new Test { Id = 1, Message = "message 1" }, i => i
.OpType(OpType.Create)
);
// using _create endpoint
client.Create(new Test { Id = 1, Message = "message 1" });
如果文档已存在,将返回HTTP 409 Conflict响应。在这两种情况下,您都需要一个用于索引/创建的文档的ID。