如果我有一个 MyBull 类型的对象和一个 List<MyBull> orig :

// Just an example
MyBull x = getMeTheObjectWithIdFromDB(9);

orig.add(x);

// Again same? data object
MyBull y = getMeTheObjectWithIdFromDB(9);

那为什么这是假的呢?
// This is false, even though all the properties
// of x and y are the same.
orig.Contains<MyBull>(y);

最佳答案

默认情况下,对象将公开基于引用的相等性。如果需要自定义规则,例如基于 id 字段的相等性,则需要覆盖 EqualsGetHashCode 方法。

关于c# - List.Contains 没有按预期工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2959581/

10-11 17:07