public override bool Equals(object obj) { if (this == obj) { return(true); } if (obj == null) { return(false); } if (GetType() != obj.GetType()) { return(false); } ColumnDescription other = (ColumnDescription)obj; if (Category != other.Category) { return(false); } if (DefaultOutput == null) { if (other.DefaultOutput != null) { return(false); } } else if (!DefaultOutput.Equals(other.DefaultOutput)) { return(false); } if (Internal != other.Internal) { return(false); } if (Name == null) { if (other.Name != null) { return(false); } } else if (!Name.Equals(other.Name)) { return(false); } if (Position != other.Position) { return(false); } return(Type == other.Type); }