/// <summary> /// Returns true if District instances are equal /// </summary> /// <param name="other">Instance of District to be compared</param> /// <returns>Boolean</returns> public bool Equals(District other) { if (other is null) { return(false); } if (ReferenceEquals(this, other)) { return(true); } return (( Id == other.Id || Id.Equals(other.Id) ) && ( MinistryDistrictID == other.MinistryDistrictID || MinistryDistrictID.Equals(other.MinistryDistrictID) ) && ( Name == other.Name || Name != null && Name.Equals(other.Name) ) && ( Region == other.Region || Region != null && Region.Equals(other.Region) ) && ( StartDate == other.StartDate || StartDate.Equals(other.StartDate) ) && ( DistrictNumber == other.DistrictNumber || DistrictNumber != null && DistrictNumber.Equals(other.DistrictNumber) ) && ( EndDate == other.EndDate || EndDate != null && EndDate.Equals(other.EndDate) )); }
/// <summary> /// Gets the hash code /// </summary> /// <returns>Hash code</returns> public override int GetHashCode() { // credit: http://stackoverflow.com/a/263416/677735 unchecked // Overflow is fine, just wrap { int hash = 41; // Suitable nullity checks hash = hash * 59 + Id.GetHashCode(); hash = hash * 59 + MinistryDistrictID.GetHashCode(); if (Name != null) { hash = hash * 59 + Name.GetHashCode(); } if (Region != null) { hash = hash * 59 + Region.GetHashCode(); } hash = hash * 59 + StartDate.GetHashCode(); if (DistrictNumber != null) { hash = hash * 59 + DistrictNumber.GetHashCode(); } if (EndDate != null) { hash = hash * 59 + EndDate.GetHashCode(); } return(hash); } }