Ich habe Listen mit verschiedenen Bereichen:kombinieren zwei Liste und Linq-Abfrage durch zwei verschiedene Felder aus verschiedenen Listen bestellen
var list1 = // contains 'publish date'
var list2 = // contains 'press release date'
var list3 = // contains 'publish date'
var list4 = // contains 'press release date'
ich diese Listen zuerst und dann, um die neuesten Veröffentlichungsdatum oder drücken Sie kombinieren muß Veröffentlichungsdatum.
pro dieses solution Versuchte, Liste ausgegeben, aber es durch die Tage nicht wie erwartet sortiert wird
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();
Jede Hilfe sehr geschätzt.
Wird viel einfacher sein, wenn Sie die Typen dieser 4 Listen anzeigen –
Alle Listen sind vom gleichen Typ - Sitecore.Data.Items.Item – TomCat
was meinst du nicht sortiert nach Daten wie erwartet? Was ist der Input und was bekommst du am Ende? –