/// <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 + RateType.GetHashCode(); hash = hash * 59 + Description.GetHashCode(); hash = hash * 59 + Active.GetHashCode(); hash = hash * 59 + PeriodType.GetHashCode(); if (Rate != null) { hash = hash * 59 + Rate.GetHashCode(); } hash = hash * 59 + IsPercentRate.GetHashCode(); hash = hash * 59 + IsRateEditable.GetHashCode(); hash = hash * 59 + IsIncludedInTotal.GetHashCode(); hash = hash * 59 + IsInTotalEditable.GetHashCode(); return(hash); } }
public override int GetHashCode() => Direction.GetHashCode() + RateType.GetHashCode() + Rate.GetHashCode();