fork(1) download
  1. using System;
  2. using System.Linq;
  3. using System.Collections.Generic;
  4.  
  5. class Item{
  6. public string ItemName { get; set; }
  7. public string GroupName { get; set; }
  8. }
  9.  
  10. public class Test
  11. {
  12. public static void Main()
  13. {
  14. List<Item> webservice = new List<Item>() {
  15. new Item(){ItemName="Item1",GroupName="A"},
  16. new Item(){ItemName="Item2",GroupName="B"},
  17. new Item(){ItemName="Item3",GroupName="B"},
  18. new Item(){ItemName="Item4",GroupName="A"},
  19. new Item(){ItemName="Item5",GroupName="A"},
  20. };
  21. var groupItems =
  22. webservice.Where(i => i.GroupName != null)
  23. .GroupBy(i => i.GroupName)
  24. .Select(grp => new { Group=grp.Key,Items=grp.ToList()});
  25. foreach (var groupItem in groupItems)
  26. Console.WriteLine("Groupname: {0} Items: {1}"
  27. , groupItem.Group
  28. , string.Join(",", groupItem.Items.Select(i => i.ItemName).ToArray()));
  29. }
  30. }
Success #stdin #stdout 0.05s 37184KB
stdin
Standard input is empty
stdout
Groupname: A Items: Item1,Item4,Item5
Groupname: B Items: Item2,Item3