public virtual string Grouped(Action <IDbEntity> a)
        {
            if (!IsEditing)
            {
                throw new ArgumentException("This entity is not being edited.");
            }

            string changesGuid = string.Empty;

            if (_tracker != null)
            {
                changesGuid = _tracker.Grouped(a);
            }
            else
            {
                a(this);
            }

            return(changesGuid);
        }