elasticsearch 嵌套:如何通过传递原始请求来实现索引映射?,elasticsearch,nest,elasticsearch,Nest" /> elasticsearch 嵌套:如何通过传递原始请求来实现索引映射?,elasticsearch,nest,elasticsearch,Nest" />

elasticsearch 嵌套:如何通过传递原始请求来实现索引映射?

elasticsearch 嵌套:如何通过传递原始请求来实现索引映射?,elasticsearch,nest,elasticsearch,Nest,我想通过传递nest来进行索引映射,但我想直接给出一个原始elasticsearch请求: var setting = new ConnectionSettings(new Uri("uri")); setting.DefaultIndex(_esIndexName); var client = new ElasticClient(setting); string rawEsRequest= "PUT /myindex { ""mappings"": { ""review""

我想通过传递nest来进行索引映射,但我想直接给出一个原始elasticsearch请求:

var setting = new ConnectionSettings(new Uri("uri"));
setting.DefaultIndex(_esIndexName);
var client = new ElasticClient(setting);

string rawEsRequest= "PUT /myindex
{
   ""mappings"": {
      ""review"": {
        ""properties"": {
          ""commentaire"": {
            ""analyzer"" : ""french"",
            ""type"": ""text"",
            ""fields"": {
              ""keyword"": {
                ""type"": ""keyword"",
                ""ignore_above"": 256
              }
            }
          },
          ""date_creaation"": {
            ""type": "date""
          }
}}}}"

//want to do this bellow
client.Mapping.rawPut(rawEsRequest);

您知道是否可以直接发出elasticsearch请求以进行映射吗?

是,在
elasticsearch.Net
中的低级客户端也通过
.LowLevel
属性暴露在NEST中的高级客户端上。您只需要删除HTTP谓词和URI,因为它们是客户端方法调用的一部分

var pool = new SingleNodeConnectionPool(new Uri("http://localhost:9200"));
var defaultIndex = "myindex;
var connectionSettings = new ConnectionSettings(pool)
        .DefaultIndex(defaultIndex);

var client = new ElasticClient(connectionSettings);

string rawEsRequest = @"{
    ""mappings"": {
        ""review"": {
            ""properties"": {
                ""commentaire"": {
                    ""analyzer"" : ""french"",
        ""type"": ""text"",
        ""fields"": {
                        ""keyword"": {
                            ""type"": ""keyword"",
            ""ignore_above"": 256
                        }
                    }
                },
              ""date_creaation"": {
                            ""type"": ""date""
              }
            }
        }
    }
}";

ElasticsearchResponse<dynamic> putResponse = 
    client.LowLevel.IndicesCreate<dynamic>(defaultIndex, rawEsRequest);
var-pool=新的SingleNodeConnectionPool(新Uri(“http://localhost:9200"));
var defaultIndex=“myindex;
var connectionSettings=新连接设置(池)
.DefaultIndex(默认索引);
var客户端=新的ElasticClient(连接设置);
字符串rawEsRequest=@”{
“映射”:{
“审查”:{
“属性”:{
“评论”:{
“分析器”:“法语”,
“”类型“”:“”文本“”,
“字段”:{
“”关键字“”:{
“”类型“”:“”关键字“”,
“忽略上面的内容”:256
}
}
},
“生效日期”:{
“”类型“”:“”日期“”
}
}
}
}
}";
ElasticsearchResponse putResponse=
client.LowLevel.indicatescreate(defaultIndex,rawsrequest);