gpt4 book ai didi

elasticsearch - 如何在巢中为Elasticsearch添加动态突出显示字段?

转载 作者:行者123 更新时间:2023-12-02 22:20:42 26 4
gpt4 key购买 nike

我希望能够使用nest动态添加字段以在Elasticsearch中突出显示。目前看来,它无法以任何方式进行迭代。

我已经尝试在.OnFields函数中进行迭代以生成.OnField函数的列表,但是它说这是不可迭代的。

在此示例中,我想动态添加“艺术家”和“标题”,并根据用户输入添加/删除其他人。这可能吗?

s.Highlight(h => h
.OnFields(f => f
.OnField("artist")
.OnField("title")
.PreTags("<em>")
.PostTags("</em>")
));

最佳答案

高亮显示一个Action<HighlightFieldDescriptor<T>>数组。您只传递了一个Action<HighlightFieldDescriptor<T>>并对其多次调用OnField,这将继续替换最后一个值。

应该是这样的:

s.Highlight(h => h
.OnFields(
f => f.OnField("artist").PreTags("<em>").PostTags("</em>"),
f => f.OnField("title").PreTags("<em>").PostTags("</em>")
));

根据后续文章中的代码,这是使用LINQ的解决方案:

s.Highlight(h => h
.OnFields(
SearchFields(searchDescriptor.SearchModifier).Select(x => new Action<HighlightFieldDescriptor>(f => f.OnField(x))).ToArray()
));

关于elasticsearch - 如何在巢中为Elasticsearch添加动态突出显示字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24128615/

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