private bool IsSame(ItemEventSignature other) { if (BeforeAction != other.BeforeAction) { return(false); } if (EventType != other.EventType) { return(false); } if (!ItemId.Equals(other.ItemId)) { return(false); } if (Modes.Count > 0 && !Modes.Intersect(other.Modes).Any()) { return(false); } if (ColumnIds.Count > 0 && !ColumnIds.Intersect(other.ColumnIds).Any()) { return(false); } return(true); }