首页 / 问答 / [C#/.NET Core]C#/.NET Core/.NET 5应用程序中如何使用NEST修改Elasticsearch索引的一个或多个指定字段的数据呢?

[C#/.NET Core]C#/.NET Core/.NET 5应用程序中如何使用NEST修改Elasticsearch索引的一个或多个指定字段的数据呢?

0

我们知道,Elasticsearch是一个支持分布式的大数据全文检索数据库,对.NET的支持也非常友好,Elasticsearch官方提供了Elasticsearch.Net和NEST这两个可以直接和Elasticsearch交互的类库。

在C#/.NET Core(.NET 5)应用程序中使用NEST对Elasticsearch(这里使用的是Elasticsearch 7.11.2)进行操作时,现需要使用NEST对某个索引的指定的一个或者多个字段的数据进行更新操作,而不是更新整个文档的数据,应该如何实现呢?

回复 [×]
提交评论
请输入评论内容

1 个回答

  • 0

    Elasticsearch提供了Update API来支持更新文档的一个或者多个指定的字段值,其语法如下:

    其中表示索引名称,<_id>表示要更新的文档的ID

    简单的请求示例API如下:

    对应的,基于.NET的NEST类库同样也实现了Update的方法来更新文档的一个或者多个指定字段的值,在做数据更新示例之前,我们来创建一个测试用的实例Customer.cs

    写入测试数据并更新指定字段的值,代码如下:

    写入的示例原始数据如下:

    尝试更新的文档的ID为913b6367-5977-49da-974b-b024bfc3762b,文档数据详细如下:

    更新结果如下图:

    Rector的个人主页

    Rector

    24天前 回答

    我来回答