public override int GetHashCode() { unchecked { var hashCode = DataId; hashCode = (hashCode * 397) ^ DataObjectId.GetHashCode(); hashCode = (hashCode * 397) ^ (int)DataType; return(hashCode); } }
public override int GetHashCode() { unchecked // Overflow is fine, just wrap { int hash = DataObjectId.GetHashCode(); // Suitable nullity checks etc, of course :) hash = (Id != null) ? hash * 17 + Id.GetHashCode() : hash; hash = (Name != null) ? hash * 17 + Name.GetHashCode() : hash; hash = hash * 17 + ItemSubjectRef.GetHashCode(); hash = hash * 17 + IsCollection.GetHashCode(); return(hash); } }