对于单个输入建议列表,以下代码有效:
var completionField = new CompletionField
{
Input = completionList,
Weight = weight
};
this.Suggest = completionField;
但我希望有多个不同权重的建议列表,并且能够搜索单个完成字段。我不确定如何在Nest中实现这一目标。
我确实看到它得到了支持:
PUT music/song/1?refresh
{
"suggest" : [
{
"input": "Nevermind",
"weight" : 10
},
{
"input": "Nirvana",
"weight" : 3
}
]
}
答案 0 :(得分:1)
如果您像这样定义完成字段:
[Completion]
public List<CompletionField> Suggest { get; set; }
并提供完成字段列表(如果需要,可以使用不同的权重),您最终会在索引中找到以下内容。
"suggest": [
{
"input": [
"higherweightedterm"
],
"weight": 1000
},
{
"input": [
"lowerweightedterm"
],
"weight": 100
}
]