/// <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 (Name != null) { hashCode = hashCode * 59 + Name.GetHashCode(); } if (UnitOfMeasure != null) { hashCode = hashCode * 59 + UnitOfMeasure.GetHashCode(); } if (MinimumValue != null) { hashCode = hashCode * 59 + MinimumValue.GetHashCode(); } if (MaximumValue != null) { hashCode = hashCode * 59 + MaximumValue.GetHashCode(); } if (RateApplicationMethod != null) { hashCode = hashCode * 59 + RateApplicationMethod.GetHashCode(); } if (ApplicabilityConditions != null) { hashCode = hashCode * 59 + ApplicabilityConditions.GetHashCode(); } return(hashCode); } }
/// <summary> /// Returns true if BankingProductRateTier instances are equal /// </summary> /// <param name="other">Instance of BankingProductRateTier to be compared</param> /// <returns>Boolean</returns> public bool Equals(BankingProductRateTier other) { if (ReferenceEquals(null, other)) { return(false); } if (ReferenceEquals(this, other)) { return(true); } return (( Name == other.Name || Name != null && Name.Equals(other.Name) ) && ( UnitOfMeasure == other.UnitOfMeasure || UnitOfMeasure != null && UnitOfMeasure.Equals(other.UnitOfMeasure) ) && ( MinimumValue == other.MinimumValue || MinimumValue != null && MinimumValue.Equals(other.MinimumValue) ) && ( MaximumValue == other.MaximumValue || MaximumValue != null && MaximumValue.Equals(other.MaximumValue) ) && ( RateApplicationMethod == other.RateApplicationMethod || RateApplicationMethod != null && RateApplicationMethod.Equals(other.RateApplicationMethod) ) && ( ApplicabilityConditions == other.ApplicabilityConditions || ApplicabilityConditions != null && ApplicabilityConditions.SequenceEqual(other.ApplicabilityConditions) ) && ( SubTier == other.SubTier || SubTier != null && SubTier.Equals(other.SubTier) )); }