2010-04-09 87 views
3

我有一個訂單列表,並希望按創建日期對它們進行分組。如何使用Linq組按日期排列的訂單列表

每個訂單的創建日期時間就會像「2010-03-13 11:17:16.000」

我怎樣才能讓他們只能按日期如「2010-03-13」?

var items = orderList.GroupBy(t => t.DateCreated) 
.Select(g => new Order() 
{ 
    DateCreated = g.Key 

}) 
.OrderByDescending(x => x.OrderID).ToList(); 

更新:如何按月對訂單進行分組?以下代碼不正確。

var items = orderList.GroupBy(t => t.DateCreated.Month) 
.Select(g => new Order() 
{ 
    DateCreated = g.Key 

}) 
.OrderByDescending(x => x.OrderID).ToList(); 

非常感謝。

+0

你終於找到了如何做到這一點只與年份? – oCcSking 2013-07-15 08:54:40

回答

2

使用Date屬性。

var items = orderList.GroupBy(t => t.DateCreated.Date) 
2

使用.Date將丟棄時間分量,例如,

var items = orderList.GroupBy(t => t.DateCreated.Date) 
0

使用t => t.DateCreate.Date