2.x中的AddSortField的Nest Client替代方案

时间:2016-04-07 13:32:53

标签: elasticsearch nest

目前,我们使用NEST客户端进行所有索引操作,其中" AddSortField"用于对分析的字段进行排序(以及排序分析器)。看起来这个选项在2.X中不再可用了。这有什么替代方案吗?或者对2.X中分析分析字段的任何建议都非常感激。

注意:当前使用的NEST和Elasticsearch版本是1.X

谢谢,

1 个答案:

答案 0 :(得分:1)

NEST 1.x中的

AddSortField只是一种方便的方法,用于将属性映射为multi_field,并在排序时使用sort子字段;对于未指定string的{​​{1}}字段,此字段为not_analyzed

要在NEST 2.x中实现相同功能,您可以use fluent mapping将属性映射为SortAnalyzer,并添加multi_field子字段

sort

sorting时,您将对var descriptor = new CreateIndexDescriptor("myindex") .Mappings(ms => ms .Map<Company>(m => m .Properties(ps => ps .String(s => s .Name(n => n.Name) // map as multi_field .Fields(fs => fs .String(ss => ss .Name("sort") .Index("sortAnalyzer") ) ) ) ) ) );

进行排序
name.sort