public override int GetHashCode() { unchecked { var hashCode = (Value != null ? Value.GetHashCode() : 0); hashCode = (hashCode * 397) ^ Valid.GetHashCode(); hashCode = (hashCode * 397) ^ (Explanation != null ? Explanation.GetHashCode() : 0); return(hashCode); } }
/// <summary> /// Gets the hash code /// </summary> /// <returns>Hash code</returns> public override int GetHashCode() { unchecked // Overflow is fine, just wrap { var hashCode = 41; // Suitable nullity checks etc, of course :) if (Id != null) { hashCode = hashCode * 59 + Id.GetHashCode(); } if (Valid != null) { hashCode = hashCode * 59 + Valid.GetHashCode(); } if (Remaining != null) { hashCode = hashCode * 59 + Remaining.GetHashCode(); } return(hashCode); } }