我有两个来自同一个类的对象,假设它命名为Class1
, Class1
有EntitySet
和ClassChild
,
根据ClassChild
(字符串1)的一个属性,指示这两个对象具有相同的ClassChild's
EntitySets
(值和计数)的最佳方法是什么?
谢谢。
您可以使用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())