Nest是否支持在多个字段上进行排序?例如,假设我想首先按FieldA升序排序,然后按FieldB降序排序.
我目前的方法看起来像这样:
searchDescriptor.Sort(s =>s.OnField("FieldA").Ascending().OnField("FieldB").Descending());
Run Code Online (Sandbox Code Playgroud)
但是"FieldB".Descending()部分似乎是发送给elasticsearch的唯一排序选项.
有谁知道是否有另一种方法来实现这一目标?
Gre*_*uka 10
您正在同一排序描述符上添加多个字段,这将覆盖以前的值.相反,您需要为每个字段指定一个新的排序描述符:
searchDescriptor
.Sort(s => s
.OnField("FieldA")
.Ascending()
)
.Sort(s => s
.OnField("FieldB")
.Descending()
)
Run Code Online (Sandbox Code Playgroud)
我最近版本的 Nest 对多个文件进行排序的正确方法是:
.Sort(s => s
Field(f => f
.Field("FieldA")
.Order(SortOrder.Ascending)
)
.Field(f => f
.Field("FieldB")
.Order(SortOrder.Ascending)
)
);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6563 次 |
| 最近记录: |