我正在为一个LINQ中的distinct表达式编写EqualityComparer,但是对于GetHashCode重载方法不太确定。下面的代码是否正确?Id属性是一个长整型基元类型。 public int GetHashCode(Deal obj) { return ((int)obj...
我的应用程序的一部分有一个选项,显示当前艺术家的专辑列表,其中不包含音乐库中已有的专辑。为了实现这个功能,我调用音乐API获取该艺术家的所有专辑列表,然后删除已经在当前库中的专辑。 为了应对名称的大小写不同以及标题中可能缺少(或额外添加)标点符号的情况,我编写了一个,用于.Except调用:...
我有一些从BaseClass类派生的类,其中BaseClass只有一个`Id`属性。 现在我需要对一些这些对象的集合进行去重。 我为每个子类反复使用以下代码: public class PositionComparer : IEqualityComparer<Position>...
我能为以下比较逻辑编写哈希码函数吗? 如果至少有两个属性(A, B, C)匹配,那么两个My实例相等。 判断相等很简单,但是我在哈希码部分被卡住了,而且我想也许不可能。 class MyOtherComparer : IEqualityComparer<My> { p...