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);
        }