在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*"
        ],
:
}
广告
将在 10 秒后关闭
bannerAds