嵌套不是自动映射未分析的字段

Gerosalesc

我创建了一个映射实体:

[ElasticsearchType(Name = "cases")]
public class Case
{

    [String(Name = "case_name")]
    public string CaseName { get; set; }

    [String(Name = "md5", Index = FieldIndexOption.NotAnalyzed)]
    public string Md5 { get; set; }

}

然后:

client.Map<Case>(mp => mp.AutoMap());

但是不包括md5字段映射的索引类型:

GET _mapping
{
  "myindex": {
    "mappings": {
      "cases": {
        "properties": {
          "case_name": {
            "type": "string"
          },
          "md5": {
            "type": "string"
          }
        }
      }
    }
  }
}

我想念什么?

拉斯·卡姆(Russ Cam)

针对新创建的索引运行时,您的代码对我有用

void Main()
{
    var pool = new SingleNodeConnectionPool(new Uri("http://localhost:9200"));
    var defaultIndex = "default-index";
    var connectionSettings = new ConnectionSettings(pool)
            .DefaultIndex(defaultIndex)
            .PrettyJson()
            .DisableDirectStreaming()
            .OnRequestCompleted(response =>
                {
                    // log out the request
                    if (response.RequestBodyInBytes != null)
                    {
                        Console.WriteLine(
                            $"{response.HttpMethod} {response.Uri} \n" +
                            $"{Encoding.UTF8.GetString(response.RequestBodyInBytes)}");
                    }
                    else
                    {
                        Console.WriteLine($"{response.HttpMethod} {response.Uri}");
                    }

                    Console.WriteLine();
                    // log out the response
                    if (response.ResponseBodyInBytes != null)
                    {
                        Console.WriteLine($"Status: {response.HttpStatusCode}\n\n" +
                                 $"{Encoding.UTF8.GetString(response.ResponseBodyInBytes)}\n" +
                                 $"{new string('-', 30)}\n");
                    }
                    else
                    {
                        Console.WriteLine($"Status: {response.HttpStatusCode}\n" +
                                 $"{new string('-', 30)}\n");
                    }
                });

    var client = new ElasticClient(connectionSettings);

    if (client.IndexExists(defaultIndex).Exists)
        client.DeleteIndex(defaultIndex);

    client.CreateIndex(defaultIndex);   
    client.Map<Case>(mp => mp.AutoMap());
    client.GetMapping<Case>();
}

[ElasticsearchType(Name = "cases")]
public class Case
{
    [String(Name = "case_name")]
    public string CaseName { get; set; }

    [String(Name = "md5", Index = FieldIndexOption.NotAnalyzed)]
    public string Md5 { get; set; }
}

在控制台中产生以下内容

HEAD http://localhost:9200/default-index?pretty=true

Status: 200


------------------------------

DELETE http://localhost:9200/default-index?pretty=true

Status: 200

{
  "acknowledged" : true
}

------------------------------

PUT http://localhost:9200/default-index?pretty=true 
{}

Status: 200

{
  "acknowledged" : true
}

------------------------------

PUT http://localhost:9200/default-index/cases/_mapping?pretty=true 
{
  "properties": {
    "case_name": {
      "type": "string"
    },
    "md5": {
      "type": "string",
      "index": "not_analyzed"
    }
  }
}

Status: 200

{
  "acknowledged" : true
}

------------------------------

GET http://localhost:9200/default-index/_mapping/cases?pretty=true

Status: 200

{
  "default-index" : {
    "mappings" : {
      "cases" : {
        "properties" : {
          "case_name" : {
            "type" : "string"
          },
          "md5" : {
            "type" : "string",
            "index" : "not_analyzed"
          }
        }
      }
    }
  }
}

------------------------------

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

休眠搜索突出显示未分析的字段

来自分类Dev

Lucene没有索引未分析的大字段

来自分类Dev

Elastic/Lucene 如何处理未分析的字段?

来自分类Dev

Elasticsearch默认映射嵌套字段

来自分类Dev

Elasticsearch 映射:如何分析或映射到数字字段?

来自分类Dev

分析或未分析,选择什么

来自分类Dev

elasticsearch未分析和分析

来自分类Dev

在Elasticsearch中将字符串的默认映射更改为“未分析”

来自分类Dev

过滤嵌套字段,或映射类型的查询

来自分类Dev

自动映射器映射复杂的嵌套对象

来自分类Dev

使用自动映射器映射多级嵌套对象

来自分类Dev

自动映射器-无法映射嵌套的对象/集合

来自分类Dev

Elasticsearch在没有过滤器的未分析字段上聚合术语

来自分类Dev

CUDA分析工具“未分析任何内核”

来自分类Dev

复杂对象中的自动映射器和映射列表/嵌套映射

来自分类Dev

使用分析器查询嵌套字段会导致错误

来自分类Dev

自动映射器将忽略嵌套对象的ignore属性

来自分类Dev

简单的自动映射器嵌套属性问题

来自分类Dev

简单的自动映射器嵌套属性问题

来自分类Dev

Orika-如何映射抽象嵌套属性的字段

来自分类Dev

Symfony-嵌套形式的检索未映射字段

来自分类Dev

Python:嵌套循环映射字段一一对应

来自分类Dev

Moshi将嵌套的JSON值映射到字段

来自分类Dev

在React JavaScript中显示/映射嵌套的JSON字段

来自分类Dev

将名称与嵌套字段之间的点映射为数组

来自分类Dev

如何将嵌套的 XML 字段映射到 CSV?

来自分类Dev

自动将MySQL位字段映射到bool属性

来自分类Dev

为什么JPA \ Hibernate不自动创建此映射字段?

来自分类Dev

自动映射器,CustomMapping不加载虚拟属性的字段

Related 相关文章

热门标签

归档