public override int GetHashCode() { unchecked { int result = Id; result = (result * 397) ^ Quantity; result = (result * 397) ^ (Product != null ? Product.GetHashCode() : 0); return result; } }