>>>>foreach (var group in groups) >>>>{ >>>> foreach (var item in group) >>>> { >>>> //process item. >>>> } >>>>} >>>>>>>>
>> var people = new List<Person>(); >> people.Add(new Person { FirstName = "John", LastName = "Doe" }); >> people.Add(new Person { FirstName = "Jane", LastName = "Doe" }); >> people.Add(new Person { FirstName = "Bob", LastName = "Barker" }); >> people.Add(new Person { FirstName = "Billy", LastName = "Barker" }); >> people.Add(new Person { FirstName = "Billy", LastName = "Bob" }); >>>>
var v = from g in people.AsEnumerable() group g by g.LastName into r select r; > >foreach (var xx in v) > { > Console.WriteLine("LastName:{0}",xx.Key); > foreach (Person p in xx) > { > Console.WriteLine("\t{0}",p.FirstName); > } > }Ah, yep, the GroupBy Lambda was the key. I was initially looking at the result of that incorrectly.