ElasticsearchCRUD使用(一)【介绍】

释放双眼,带上耳机,听听看~!

为什么选择ElasticsearchCRUD

我想要一个简单的方法来将我的应用程序实体添加,更新或删除到Elasticsearch文档中。 单个上下文可以与许多实体类型一起使用,并且可以根据需要进行非常容易的调整,例如对于所有属性进行小写处理,或者可以定义任何特定的映射。 ElasticLINQ目前没有提供CRUD操作,虽然您可以使用NEST几乎满足任何要求(我也认为它是一个很棒的API),但我发现它有点太复杂了。


设置基本的CRUD实体到文档

创建将在Elasticsearch中保存为文档的实体类:

创建您的ElasticsearchContext和IElasticsearchMappingResolver。 上下文需要Elasticsearch URL。 在映射文件中定义索引以及类型和属性映射

现在我们可以向Elasticsearch添加一些文档

以下是你如何选择,更新或删除文档

结果如下:
ElasticsearchCRUD使用(一)【介绍】


删除Elasticsearch索引

您也可以从Elasticsearch中删除任何索引。 要删除索引,必须将AllowDeleteForIndex属性设置为true。 我添加了这个,因此索引不会默认设置被删除。 通常,您不需要删除索引。

如果您需要特殊的实体/文档映射怎么办?

您可以实现ElasticsearchSerializerMapping,并根据需要定义映射。 以下示例仅使用小写字符映射文档。

您可以将其添加到IElasticsearchMappingResolver实现中:

您还可以映射这样的属性:

跟踪:

您还可以使用您最喜欢的记录器跟踪请求,响应。 所有您需要做的是实现ITraceProvider并在上下文中设置TraceProvider属性。

或者您可以使用System.Diagnostics进行跟踪:

这是System.Diagnostics配置的一个例子:

ITraceProvider的实现示例:

给TA打赏
共{{data.count}}人
人已打赏
安全运维

OpenSSH-8.7p1离线升级修复安全漏洞

2021-10-23 10:13:25

安全运维

设计模式的设计原则

2021-12-12 17:36:11

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索