2
を注文するために2つのリストと、LINQクエリを結合:は、私は別のフィールドを持つリストを持っている別のリストから2つの異なるフィールドで
var list1 = // contains 'publish date'
var list2 = // contains 'press release date'
var list3 = // contains 'publish date'
var list4 = // contains 'press release date'
私が公開した日付やプレスの最新による最初のこれらのリストを結合して、オーダーする必要があります発売日。このsolutionあたりにしようとしました
は、リストが出力されますが、期待どおりにすべてのヘルプは高く評価された日付で
var combinedList = list1.Concat(list2)
.Concat(list3)
.Concat(list4)
.OrderByDescending(x => x.Fields["Press Release Date"] != null || x.Fields["Publish Date"] != null)
.ThenBy(x => x.Fields["Press Release Date"] != null ? x.Fields["Press Release Date"].ToString() : "")
.ThenBy(x => x.Fields["Publish Date"] != null ? x.Fields["Publish Date"].ToString() : "").ToList();
をソートしません。
これらの4つのリストの種類を表示すると、はるかに簡単になります –
すべてのリストは同じタイプです - Sitecore.Data.Items.Item – TomCat
期待どおりの日付で並べ替えられないのはどういう意味ですか?入力は何ですか?最後には何が得られますか? –