using System.Collections.Generic;
public int ID { get; set; }
public int Value { get; set; }
public override string ToString()
static void Main(string[] args)
var bobs = new List<Bob> { new Bob { ID = 1, Value = 1 }, new Bob { ID = 2, Value = 2 } };
var groupedBobs = bobs.GroupBy(z => z.ID);
Console.WriteLine(string.Join(",", groupedBobs.First()));
Console.WriteLine(CalculateHash(groupedBobs));
Console.WriteLine(string.Join(",", groupedBobs.First()));
private static bool CalculateHash(IEnumerable<IGrouping<int, Bob>> groupedBobs)
foreach (var entry in groupedBobs)