如何将此SQL Order By语句转换为LINQ to Object



这是SQL ORDER BY:

order by case when [order] is null then 1 else 0 end, [order]

如何在LINQ to Object语句中编写它?

方法语法

var query = enumerable.OrderBy(x => x.order == null ? 1 : 0).ThenBy(x => x.order);

查询语法

var query = from x in enumerable
orderby (x.order == null ? 1 : 0), x.order
select x;

假设order是一个可以为null的值(而不是对象),您应该能够使用以下内容:

orderby null == order ? 1 : 0, order

如果是物体,你可以试试

orderby null == order ? 1 : 0, order.PropertyName

最新更新