2017-10-12 9 views
0

私は現在、Sitecore内の自然順序に基づいてSitecoreアイテムを繰り返して出力しています。Sitecore foreach、日付フィールドで子供を注文

仕様が変更され、各アイテムに対して日付フィールドが必要になりました。これにより、古いものから順にソート順が決定されます。最も簡単な方法は何ですか?

フィールド名がEVENTDATE

ページでは、現在使用して幸せだった:任意の助け

答えて

0

ため

Sitecore.Collections.ChildList eventItems; 
eventItems = eventRange.GetChildren(); 

foreach (Item eventItem in eventItems) { 
    timelineHolder.InnerHtml += "<h3>" + eventItem.Fields["Title"] + "</h3>"; 
} 

おかげで、ちょうどあなたのforeachループで.OrderBy(ei => ei["EVENTDATE"])を追加します。

Sitecore.Collections.ChildList eventItems; 
eventItems = eventRange.GetChildren(); 

foreach (Item eventItem in eventItems.OrderBy(ei => ei["EVENTDATE"])) 
{ 
    timelineHolder.InnerHtml += "<h3>" + eventItem.Fields["Title"] + "</h3>"; 
} 

日付がありますSitecoreに文字列として格納される(Sitecore 8は20171012T000000Z、Sitecore 6ではより短い形式です)。実際にアルファベット順に日付順に並べます。

+0

すごくお返事ありがとうございます – user3779703

関連する問題