2013-12-03 117 views
0

我有如下:如何排序日期時間元素

類視頻,其中包含一個DateTime屬性(當視頻發佈時)。

現在我想展示一些最近新增的影片,我有視頻列表,和我期待的lambda表達式來比較兩個日期時間元素

這不`噸的工作:

List<Video> list = new List<Video>(); 
//.. Adding some videos 
List<Video> orderedList = list.OrderBy(x => x.DatePosted).ToList(); 

預先感謝幫助

+0

究竟不工作?你能澄清一下你的實際結果是什麼,你的預期結果是什麼? –

+0

List

+0

你描述的代碼確實有效,你可以在這個頁面的底部看到:http://ideone.com/Gfan8o請發佈你的實際代碼不起作用。 – nmclean

回答

3

您可以使用OrderByDescending以獲得最新的視頻和Take只得到您的一些影片:

const int aFew = 5; 
var fewRecentVideos = list.OrderByDescending(v => v.DatePosted).Take(aFew); 
1
list.OrderBy(x => (DateTime.Now - x.DatePosted).TotalMinutes).ToList(); 

您可以將日期時間轉換爲相對於今天/現在時間跨度,做升序或降序順序。