Example #1
0
 public override int GetHashCode()
 {
     //We don't care about overflow here just need to make a hash
     unchecked
     {
         return(31 * RequiredText.GetHashCode() + Date.GetHashCode() + Decimal.GetHashCode() + OptionalText.GetHashCode());
     }
 }
Example #2
0
 /// <summary>
 /// Override default equals since this is an object and the normal one will be a pointer compare.
 /// </summary>
 /// <param name="obj"></param>
 /// <returns>True if both ItemCodeDescriptorId are equivalent</returns>
 public override bool Equals(object obj)
 {
     if (obj is ParseTableTestBaseModel compareModel)
     {
         if (RequiredText == null && compareModel.RequiredText == null)
         {
             return(true);
         }
         else if (RequiredText == null || compareModel.RequiredText == null)
         {
             return(false);
         }
         return(string.Equals(RequiredText.Trim(), compareModel.RequiredText.Trim(), StringComparison.OrdinalIgnoreCase) &&
                string.Equals(Date?.ToShortDateString(), compareModel.Date?.ToShortDateString(), StringComparison.OrdinalIgnoreCase) &&
                decimal.Round((decimal)Decimal, 2) == decimal.Round((decimal)compareModel.Decimal, 2) &&
                string.Equals(OptionalText?.Trim(), compareModel.OptionalText?.Trim(), StringComparison.OrdinalIgnoreCase));
     }
     return(base.Equals(obj));
 }