2012-11-21 39 views
-2

我想從最後一天獲取記錄。表是這樣的:使用Linq從最後一天獲取記錄

ID - DateTime -------------- ItemId
-1 - 10/21/2012 12:08:10 PM - 45
-2 - 11/21/2012 11:20:18 AM - 30
-3 - 11/21/2012 11:50:00 AM - 11

在這個例子中,我想只行2和3,我如何能做到這一點?

我只想從最後一天開始輸入。這是虛擬數據。

謝謝

+0

我不知道該怎樣做到這一點的想法。我是linq新手。 – Darshana

+0

如果您對linq查詢不熟悉,請提供輸入數據結構。還要從[基本Linq查詢操作](http://msdn.microsoft.com/en-us/library/bb397927.aspx) – Tilak

+0

中學習基本知識。問一個更好的問題是「如何瞭解更多關於LINQ的知識」,但是這已經在StackOverflow上多次提出,例如http://stackoverflow.com/search?q=learn+linq –

回答

0
var lastDayItems = itmes.GroupBy(i => i.DateTime.Date) 
         .OrderByDescending(g => g.Key) 
         .First(); 

OR

var date = items.Max(i => i.DateTime).Date; 
var lastDayItems = itmes.Where(i => i.DateTime.Date == date); 
+0

我想獲得LAST DAY條目。這些是虛擬數據 – Darshana

+0

@Darshana那麼你爲什麼要寫這個評論? –

0

嘗試之後TakeSkip

int[] ints = new [] {1,2,3}; 
var last = ints.Skip(1).Take(2). 

更新基於意見

我想最後一天的條目。這些是假數據

然後用Last方法。

int[] ints = new [] {1,2,3}; 
var last = ints.Last(). 
+0

我想獲得LAST DAY條目。這些是虛擬數據 – Darshana