protected DataSelectingEventArgs OnSelecting(Type entityType, ICondition condition, Grouping grouping, string scope, Paging paging, Sorting[] sortings)
        {
            var args = new DataSelectingEventArgs(this.Name, entityType, condition, grouping, scope, paging, sortings);

            this.OnSelecting(args);
            return(args);
        }
        protected virtual void OnSelecting(DataSelectingEventArgs args)
        {
            var e = this.Selecting;

            if (e != null)
            {
                e(this, args);
            }
        }
        protected virtual bool OnSelecting(DataSelectionContext context)
        {
            var e = this.Selecting;

            if (e == null)
            {
                return(false);
            }

            var args = new DataSelectingEventArgs(context);

            e(this, args);
            return(args.Cancel);
        }