在Elasticsearch.Net中的通用方法
首先
我之前写了关于如何使用Elasticsearch.Net进行基本操作的描述方式,但是我花了很多时间在官方网站上查找具体执行操作的Elasticsearch.Net函数。
最近我找到了一个在所有情况下都适用的函数,现在将其记录下来。
前提
– 前述条件
– 先决条件
– 基本假设
版本等
-
- Elasticsearch: ver7.17.3
- Elasticsearch.Net: ver7.17.2
连接
就如同之前所写的一样,我们假设连接是以以下方式创建的。
using Elasticsearch.Net;
string url = "http://localhost:9200";
var settings = new ConnectionConfiguration(new Uri(url));
var client = new ElasticLowLevelClient(settings);
太长不看;通用函数。
使用DoRequest函数。
var response = client.DoRequest<StringResponse>(
Elasticsearch.Net.HttpMethod.PUT,
"/oneday/_doc/eng",
$@"{{
{{""morning"": ""asa""}},
{{""afternoon"": ""gogo""}},
{{""evening"": ""yugata""}}
}}"
);
看了就能明白,只是为了确保起见。
-
- 第1引数: Httpメソッドの種類。最後のPUTの部分を変更するだけ。
-
- 第2引数: コマンド部分。
- 第3引数: body(json)部分。
适用范例 lì)
我们考虑执行创建indexTemplate的案例。
当执行以下代码时,
var response = client.DoRequest<StringResponse>(
Elasticsearch.Net.HttpMethod.PUT,
"/_index_template/template_1",
$@"{{
""index_patterns"": [""te*""],
""priority"": 1,
""template"": {{
""settings"": {{
""number_of_shards"": 2
}}
}}
}}"
);
创建了indexTemplate。
$ curl -X GET http://localhost:9200/_index_template/template_1
{
"index_templates": [
{
"name": "template_1",
"index_template": {
"index_patterns": [
"te*"
],
:
}