/// <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 (ReferenceNumber != null) { hashCode = hashCode * 59 + ReferenceNumber.GetHashCode(); } if (ItemNumber != null) { hashCode = hashCode * 59 + ItemNumber.GetHashCode(); } if (Quantity != null) { hashCode = hashCode * 59 + Quantity.GetHashCode(); } if (UnitSellPrice != null) { hashCode = hashCode * 59 + UnitSellPrice.GetHashCode(); } if (UnitItemTaxPrice != null) { hashCode = hashCode * 59 + UnitItemTaxPrice.GetHashCode(); } if (UnitShippingPrice != null) { hashCode = hashCode * 59 + UnitShippingPrice.GetHashCode(); } if (UnitShippingTaxPrice != null) { hashCode = hashCode * 59 + UnitShippingTaxPrice.GetHashCode(); } if (Coupons != null) { hashCode = hashCode * 59 + Coupons.GetHashCode(); } if (LinkedFees != null) { hashCode = hashCode * 59 + LinkedFees.GetHashCode(); } if (DeliveryDetail != null) { hashCode = hashCode * 59 + DeliveryDetail.GetHashCode(); } return(hashCode); } }