NEST如何使用注释设置完成建议上下文



我正在尝试在我的POJO类上为我的完成建议属性设置上下文,然而,大多数在线文档都是基于配置设置的。有什么想法可以实现吗?

[Completion]
public CompletionField Suggest { get; set; }

用于索引:

[Completion(Name = "FieldNameSuggest")]
public CompletionField Suggest
{
get
{
List<string> data = new List<string>();
data.AddRange(new List<string>() {"word1",word2"word3",... });//for suggest
return new CompletionField()
{
Input = data,
Weight = 1
};
}
}

获取建议:

查询:

var sugContainer = new SuggestContainer
{
{ "completion-suggest", new SuggestBucket
{
Prefix ="word",//text for search
Completion = new CompletionSuggester
{
//Fuzzy = new FuzzySuggester
//{
//    Fuzziness = Fuzziness.Auto,
//    MinLength = 1,
//    PrefixLength = 2,
//    Transpositions = true,
//    UnicodeAware = false
//},
Analyzer = "simple",
Field =new Field("FieldNameSuggest"),
Size =10, //SuggestionCount
SkipDuplicates=true,
}
}
}
};

最终搜索:

var Result = Client.Search<T>(new SearchRequest<T>
{
Suggest = sugContainer ,
...
});

最新更新