您可以使用 Elasticsearch 的 multi-match 查询来高亮显示多个字段。以下是一个示例:

var searchResponse = client.Search<MyDocument>(s => s
    .Query(q => q
        .MultiMatch(m => m
            .Fields(f => f
                .Field(p => p.Field1)
                .Field(p => p.Field2)
                .Field(p => p.Field3))
            .Query('search term')
            .Type(TextQueryType.CrossFields)
            .Operator(Operator.And)))
    .Highlight(h => h
        .PreTags('<em>')
        .PostTags('</em>')
        .Fields(fs => fs
            .Field(p => p.Field1)
            .Field(p => p.Field2)
            .Field(p => p.Field3))));

上述代码使用 multi-match 查询来搜索 MyDocument 类型的三個字段(Field1、Field2 和 Field3)中的 'search term'。它还使用 highlight 功能高亮显示匹配的字段。

C# ES 多字段高亮查询示例

原文地址: https://www.cveoy.top/t/topic/na88 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录