public bool Equals(CollectionChanges <TExisting, TUpdated> other) { if (Object.ReferenceEquals(null, other)) { return(false); } return (ToBeAdded.SequenceEqual(other.ToBeAdded) && ToBeRemoved.SequenceEqual(other.ToBeRemoved) && ToChange.SequenceEqual(other.ToChange)); }
public override int GetHashCode() { unchecked { var result = 0; result = (result * 397) ^ ToBeAdded.ToArray().GetHashCode(); result = (result * 397) ^ ToBeRemoved.ToArray().GetHashCode(); result = (result * 397) ^ ToChange.ToArray().GetHashCode(); return(result); } }