public override bool Equals(object obj) { if (obj == null) { return(false); } if (this.GetType() != obj.GetType()) { return(false); } if (ReferenceEquals(this, obj)) { return(true); } if (this.GetHashCode() != obj.GetHashCode()) { return(false); } System.Diagnostics.Debug.Assert(base.GetType() != typeof(object)); // check base.Equals() if base overides Equals() if (!base.Equals(obj)) { return(false); } DiscountSpecific discount = obj as DiscountSpecific; return(this.dataInceput == discount.dataInceput && this.motivDiscount == discount.motivDiscount && this.durata == discount.durata && this.sumaAditionala == discount.sumaAditionala); }
public override int CompareTo(object obj) { if (obj == null) { return(1); } DiscountSpecific temp = obj as DiscountSpecific; if (temp != null) { int baseCompare = base.CompareTo(obj); if (baseCompare != 0) { return(baseCompare); } else if (this.sumaAditionala > temp.sumaAditionala) { return(1); } else if (this.sumaAditionala < temp.sumaAditionala) { return(-1); } else if (this.dataInceput + this.durata > temp.dataInceput + temp.durata) { return(1); } else if (this.dataInceput + this.durata < temp.dataInceput + temp.durata) { return(-1); } else { return(this.motivDiscount.CompareTo(temp.motivDiscount)); } } else { throw new ArgumentException("Object is not a " + this.GetType().ToString()); } }