我有来自同一个类的两个对象,假设它命名为Class1
,Class1
有一个EntitySet
,基于(字符串一)的一个属性
表明这两个对象具有相同的确切 (值和计数ClassChild
)的最佳方法是什么?ClassChild's
EntitySets
ClassChild
谢谢你。
您可以使用SequenceEqual
- 方法:
bool equal = obj1.ClassChildren.SequenceEqual(obj2.ClassChildren)
它使用默认相等比较器来使用自定义比较器,请参见此处或此示例:
class ClassChildComparer : IEqualityComparer<ClassChild>
{
public bool Equals(ClassChild x, ClassChild y)
{
return x.Property == y.Property;
}
// If Equals() returns true for a pair of objects then GetHashCode() must return the same value for these objects.
public int GetHashCode(ClassChild c)
{
return c.Property.GetHashCode();
}
}
//and then:
bool equal = obj1.ClassChildren.SequenceEqual(obj2.ClassChildren, new ClassChildComparer())