gpt4 book ai didi

.net - 在Elastic NEST 2.0中使用后缀

转载 作者:行者123 更新时间:2023-12-03 01:55:24 29 4
gpt4 key购买 nike

我正在尝试为我的其中一个属性创建一个multi_field,以使用后缀获取原始值

elasticClient.CreateIndex(IndexName.From<ResultModel>(),
index => index.Mappings(
mappings => mappings.Map<ResultModel>(
map => map.AutoMap().Properties(
properties => properties.String(
s => s.Name(e => e.Name.Suffix("raw")).Index(FieldIndexOption.NotAnalyzed)
)
)
)
)
);

但是,查看创建的索引将其命名为 raw,该字段名称没有前缀。

field name

文档对于NEST 2.0有点粗略,我唯一能找到的文档是序列化输出时的测试用例场景:

https://www.elastic.co/guide/en/elasticsearch/client/net-api/current/field-inference.html

有人对在NEST 2.0中如何创建带后缀的multi_fields有任何想法吗?

最佳答案

NEST github上的Thisthat问题说明了如何使用版本2。

在您的情况下,将是这样的:

var createIndexResponse = client.CreateIndex(IndexName.From<ResultModel>(),
index => index.Mappings(
mappings => mappings.Map<ResultModel>(
map => map.AutoMap().Properties(
properties => properties.String(
s => s.Name(e => e.Name)
.Index(FieldIndexOption.Analyzed)
.Fields(f => f.String(s2 => s2.Name("raw").Index(FieldIndexOption.NotAnalyzed)))
)
)
)
)
);

希望能帮助到你。

关于.net - 在Elastic NEST 2.0中使用后缀,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37022493/

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