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