1. ホーム
  2. c#

[解決済み] Linqで2つのフィールドを持つorderbyを使用するには?[重複している]。

2022-04-21 08:07:43

質問

データベースのテーブルに次のような値があるとします。

id = 1
StartDate = 1/3/2010
EndDate =  1/3/2010

id = 2
StartDate = 1/3/2010
EndDate = 1/9/2010

今のところ、私のLinqにはこのようなorderbyがあります。

var hold = MyList.OrderBy(x => x.StartDate).ToList();

しかし、終了日でも注文したいのですが。

例えば、次のような順番で表示させたい。

id 2
id 1

だから endDates より大きいものが先になります。比較関数か何かを使ってこれを変更する必要があるかどうかはわかりません。

どのように解決するのですか?

MyList.OrderBy(x => x.StartDate).ThenByDescending(x => x.EndDate);