public int CompareTo(Material other) { if (ReferenceEquals(this, other)) { return(0); } if (ReferenceEquals(null, other)) { return(1); } var codeMaterialComparison = CodeMaterial.CompareTo(other.CodeMaterial); if (codeMaterialComparison != 0) { return(codeMaterialComparison); } var measureComparison = Comparer <Measure> .Default.Compare(Measure, other.Measure); if (measureComparison != 0) { return(measureComparison); } return(Id.CompareTo(other.Id)); }
public override int GetHashCode() { unchecked { var hashCode = Id.GetHashCode(); hashCode = (hashCode * 397) ^ CodeMaterial.GetHashCode(); hashCode = (hashCode * 397) ^ (Name != null ? StringComparer.OrdinalIgnoreCase.GetHashCode(Name) : 0); hashCode = (hashCode * 397) ^ (Profile != null ? StringComparer.OrdinalIgnoreCase.GetHashCode(Profile) : 0); hashCode = (hashCode * 397) ^ (Gost != null ? StringComparer.OrdinalIgnoreCase.GetHashCode(Gost) : 0); hashCode = (hashCode * 397) ^ (Measure != null ? Measure.GetHashCode() : 0); hashCode = (hashCode * 397) ^ ServiceMappedMeasureId.GetHashCode(); hashCode = (hashCode * 397) ^ Nu65TableId.GetHashCode(); hashCode = (hashCode * 397) ^ (AuxiliaryMaterialConsumptionRate != null ? StringComparer.OrdinalIgnoreCase.GetHashCode(AuxiliaryMaterialConsumptionRate) : 0); hashCode = (hashCode * 397) ^ (WorkGuildId != null ? StringComparer.OrdinalIgnoreCase.GetHashCode(WorkGuildId) : 0); hashCode = (hashCode * 397) ^ (SignMaterial != null ? StringComparer.OrdinalIgnoreCase.GetHashCode(SignMaterial) : 0); hashCode = (hashCode * 397) ^ (ParcelId != null ? StringComparer.OrdinalIgnoreCase.GetHashCode(ParcelId) : 0); hashCode = (hashCode * 397) ^ (UnitValidation != null ? StringComparer.OrdinalIgnoreCase.GetHashCode(UnitValidation) : 0); hashCode = (hashCode * 397) ^ Date.GetHashCode(); hashCode = (hashCode * 397) ^ (FlowRate != null ? StringComparer.OrdinalIgnoreCase.GetHashCode(FlowRate) : 0); return(hashCode); } }