gpt4 book ai didi

elasticsearch - 在ElasticSearch 5中将C#枚举另存为字符串而不是int

转载 作者:行者123 更新时间:2023-12-03 00:07:31 24 4
gpt4 key购买 nike

我曾经在Elastic Search 2.0中对枚举类型的类属性具有String属性,以便将枚举值存储为字符串而不是整数:

public enum PaperType
{
A4 = 0,
A3 = 1
}

和类将作为文档存储在ElasticSearch中
[ElasticsearchType(Name = "Paper")]
public class Paper
{
[String(Store = false, Index = FieldIndexOption.Analyzed)]
public string Name { get; set; }

[String(Store = false, Index = FieldIndexOption.Analyzed)]
public PaperType Type { get; set; }
}

因此在Type中将其存储为A3或A4而不是0或1。

在ElasticSearch 5中,这些属性已更改,

我如何在ElasticSearch 5中实现相同的行为或应具有什么属性以及应如何设置?

谢谢

最佳答案

看一下文档中的attribute mapping;您可能希望将它们映射为Keyword类型。

如果要将所有enum保存为字符串,则可以将Json.Net StringEnumConverter添加到 JsonSerializerSettings 中,以用于任何枚举类型。

关于elasticsearch - 在ElasticSearch 5中将C#枚举另存为字符串而不是int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43909615/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com