2011-08-01 20 views
6

navigationList adlı bir koleksiyona sahibim. Bu liste customer nesnelerini içerir. Bir müşterinin Town isimli bir özelliği vardır.LINQ groupby question

Bu listede 5 müşteri var: 2 şehir "New York" ve 5 "Madrid" ile şehir.

Listenin yalnızca 2 müşteri tutmasını istiyorum. 1 kasaba "New York" ve bir "Madrid" ile. Eğer 2 "New York" dan geliyorsa, sonuncuyu istiyorum. "Madrid" için de aynısı.

LINQ ifadesi neye benziyordu? Bu durumda

var newList = navigationList. 
       GroupBy(c => c.Town). 
       Select(g => g.OrderBy(c => c.Id).Last()). 
       ToList(); 

sipariş yapılır:

var newList = navigationList.GroupBy(c => c.Town) // ? 

cevap

18

Sen Last anlamlı olmasının Ancak

var newList = navigationList.GroupBy(c => c.Town).Select(g => g.Last()).ToList(); 

gibi bir şey, muhtemelen, OrderBy ilk isteyeyim isteyeyim müşteri kimliğine göre