我有兩個嵌套2.3的代碼片斷,我沒有能夠在最新的5.0.0-rc3中配合。NEST 5.x字段使用
var titleField = Infer.Field<Page>(p => p.Title, 2);
var metaDescriptionField = Infer.Field<Page>(p => p.MetaDescription, 1.5);
var metaKeywordsField = Infer.Field<Page>(p => p.Keywords, 2);
var bodyField = Infer.Field<Page>(p => p.Body);
MultiMatchQuery multiMatchQuery = new MultiMatchQuery()
{
Fields = new [] {
bodyField,
metaKeywordsField,
metaKeywordsField,
titleField
},
Query = search.Term
};
這裏的生成錯誤是 「無法隱式轉換Nest.Field []以Nest.Fields」。我可以做類似
MultiMatchQuery multiMatchQuery = new MultiMatchQuery()
{
Fields = Infer.Fields<Page>(p => p.Title, p => p.MetaDescription, p => p.Keywords, p => p.Body),
Query = search.Term
};
但是後來我失去了現場加權。我一直有與煩惱
第二場useagle是
var searchResponse = client.Search<Page>(s => s
.MatchAll()
.From(from)
.Size(size)
.Fields(f => f.Field(fi => fi.Id).Field(fi => fi.SourceId))
);
建立自己的錯誤這裏是「Nest.SearchDescriptor」不包含「場」的定義,並沒有擴展方法「字段」接受第一類型「Nest.SearchDescriptor」的說法可以找到(是否缺少using指令或程序集引用?
我還沒有與得到的東西編譯能夠在任何情況下運氣。