2

これはSQLORDERBYです:

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

LINQ-To-Objectステートメントでそれを書く方法は?

4

2 に答える 2

3

メソッド構文

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;
于 2012-09-18T14:32:35.823 に答える
0

orderがnull許容値(オブジェクトではない)であると仮定すると、次のように使用できるはずです。

orderby null == order ? 1 : 0, order

オブジェクトの場合は、試すことができます

orderby null == order ? 1 : 0, order.PropertyName
于 2012-09-18T14:35:17.067 に答える