在 Nest 中结合 Elasticsearch completion suggester 和 IBook Query
Combining Elastic Search completion suggester with IBoolQuery in Nest
在调用完成建议器之前,我已尝试根据某些排除项过滤我的文档。
var response = Client.Search<Suggestion>(s => s
.Query(q => q.Bool(MustNot(m => m.SpanTerm(st => st.Field("foo").Value("bar"))))
.Suggest(su => su
.Completion("title", cs => cs
.Field(f => f.TitleSuggest)
.Prefix(searchText) .
)
.Size(10)
)
)
);
但这似乎不起作用。返回相同的结果集。
进一步阅读后,使用标准布尔运算符似乎无法做到这一点。上下文建议是解决方案,但这不支持例如MustNot 修饰符
https://www.elastic.co/guide/en/elasticsearch/reference/current/suggester-context.html
在调用完成建议器之前,我已尝试根据某些排除项过滤我的文档。
var response = Client.Search<Suggestion>(s => s
.Query(q => q.Bool(MustNot(m => m.SpanTerm(st => st.Field("foo").Value("bar"))))
.Suggest(su => su
.Completion("title", cs => cs
.Field(f => f.TitleSuggest)
.Prefix(searchText) .
)
.Size(10)
)
)
);
但这似乎不起作用。返回相同的结果集。
进一步阅读后,使用标准布尔运算符似乎无法做到这一点。上下文建议是解决方案,但这不支持例如MustNot 修饰符
https://www.elastic.co/guide/en/elasticsearch/reference/current/suggester-context.html