在使用字典时,我总是覆盖 GetHashCode 和 Equals(或为字典提供自定义比较器)。
当我创建一个匿名类作为键时,幕后会发生什么?
示例代码....
var groups=(from item in items
group item by new { item.ClientId, item.CustodianId, item.CurrencyId }
into g
select new {
Key=g.Key,
Sum=g.Sum(x => x.Cash)
}).ToDictionary(item=>item.Key,item=>item.Sum);
这段代码给了我预期的结果,但我没有为匿名类提供 GetHashCode 和 Equals 方法。这段代码不应该无法根据匿名类中的项目对我的项目进行分组吗?