抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

在 MongoDB 中执行查询时出现提示 ”System.NotSupportedException: Only fields are allowed in a $sort“,意思是排序操作中只允许字段。我的查询语句是这样的:

1
var query = colleciton.AsQueryable().OrderByDescending(a => (a.Telephone == null) ? a.MobilePhone: a.Telephone);

OrderByDescending 里面传入的是一个表达式,那么我们就需要进行改进一下:

1
2
3
4
var query = colleciton.AsQueryable()
.Select(a => new { Customer = a, SortBy = a.Telephone == null ? a.MobilePhone : a.Telephone })
.OrderByDescending(a => a.SortBy)
.Select(a => a.Customer);

评论