2012-06-19 16 views

Odpowiedz

2

Daje listę typu IGrouping<int, MyObject> (uwaga, zakładam że ID ma typ int):

groupedList = (from obj in MyObjects 
      group obj by obj.ID into grouped 
      select grouped).ToList(); 
2

Brzmi to może chcesz ToLookup:

var lookup = MyObjects.ToLookup(x => x.ID); 

który pozwala pobrać wszystkie wartości dla danego ID lub iteracyjne nad ugrupowaniami. Jest on chętnie oceniany, a nie leniwie oceniany, co jest prawdopodobnie tym, czego chcesz w tym przypadku.

Zakładamy, że zrozumiałem twoją prośbę poprawnie - jest całkiem możliwe, że nie ... dobrze by było, gdybyś mógł wyjaśnić.