C#NEST ElasticSearch搜索并突出显示所有类型的所有字段

时间:2017-10-13 14:15:49

标签: c# elasticsearch

我是弹性堆栈的新手,想在我的索引模型上实现全局搜索,这就是我现在提出的:

myblenderdaemodel.dae

但是我的文件点击中没有突出显示。我做错了什么?如何检索[index,count]对以突出显示?

2 个答案:

答案 0 :(得分:3)

尝试更换" _all"用*

的荧光笔
     var response = _client.Search<IndexBase>(s => s
                                                 .Type(Types.Type(typeof(A), typeof(B)))
                                                 .Query(qry => qry
                                                            .Bool(b => b
                                                                      .Must(m => m
                                                                                .QueryString(qs => qs
                                                                                                 .DefaultField("_all")
                                                                                                 .Query(request.Query)))))
                                                 .Highlight(h =>
                                                                h.Fields(f => f.Field("*")))

答案 1 :(得分:0)

您没有正确索引字段。

为了执行突出显示,需要该字段的实际内容。如果存储了相关字段(在映射中将store设置为true),则将使用它,否则,将加载实际的_source并从中提取相关字段。

无法从_source中提取_all字段,因此只有在映射到store设置为true时才能用于突出显示。 Source

同样对于任何更大的数据集,这可能会导致性能下降,因此最好以正确的方式设置搜索字段并知道您要突出显示的内容。