【发布时间】:2015-06-16 00:33:55
【问题描述】:
我有 AutoComplete 与 ElasticSearch (Nest) 一起使用,当用户从短语开头输入字母时很好,但如果可能的话,我希望能够使用专门类型的自动完成一句话。
为了进一步澄清,我的要求是能够像这样“自动完成”:
想象完整的索引字符串是“这是一些标题”。当用户输入 "th" 时,这会作为我当前代码的建议返回。
如果用户输入 "som" 或 "title" 或任何组成单词的字母(单词被分类作为两个空格之间的字符串或字符串的开头/结尾)。
我的代码是:
var result = _client.Search<ContentIndexable>(
body => body
.Index(indexName)
.SuggestCompletion("content-suggest" + Guid.NewGuid(),
descriptor =>
descriptor
.OnField(t => t.Title.Suffix("completion"))
.Text(searchTerm)
.Size(size)));
我想看看是否可以使用SuggestCompletion(而不是通过匹配查询)编写符合我要求的内容。
非常感谢,
更新: 这个问题在这里已经有了答案,但我把它留在这里,因为标题/描述可能更容易被搜索引擎搜索。
可以在此处找到此问题的正确解决方案: Elasticsearch NEST client creating multi-field fields with completion
【问题讨论】:
标签: elasticsearch nest