/// <summary> /// 初始化 <see cref="OrderByExpressionVisitor"/> 类的新实例 /// </summary> public OrderByExpressionVisitor(DbQueryProviderBase provider, TableAliasCache aliases, List <DbExpression> qOrder, DbExpression groupBy = null, string alias = null) : base(provider, aliases, null, false) { _qOrder = qOrder; _aliases = aliases; _groupBy = groupBy; _alias = alias; }
/// <summary> /// 初始化 <see cref="StatisExpressionVisitor"/> 类的新实例 /// </summary> public StatisExpressionVisitor(DbQueryProviderBase provider, TableAliasCache aliases, DbExpression statis, DbExpression groupBy = null, string alias = null) : base(provider, aliases, statis.Expressions != null ? statis.Expressions[0] : null, false) { _provider = provider; _aliases = aliases; _statis = statis; _groupBy = groupBy; _alias = alias; }
/// <summary> /// 初始化 <see cref="ExpressionVisitorBase"/> 类的新实例 /// </summary> public ExpressionVisitorBase(DbQueryProviderBase provider, TableAliasCache aliases, Expression exp, bool useNominate = true) { _provider = provider; _aliases = aliases; _navigations = new Dictionary <string, MemberExpression>(); _expression = exp; //var visitor = new PartialVisitor(); //_expression = useNominate ? visitor.Eval(exp) : exp; }
/// <summary> /// 初始化 <see cref="ColumnExpressionVisitor"/> 类的新实例 /// </summary> public ColumnExpressionVisitor(DbQueryProviderBase provider, TableAliasCache aliases, DbExpression exp, DbExpression groupBy = null, bool mOnly = false) : base(provider, aliases, exp.Expressions != null ? exp.Expressions[0] : null) { _provider = provider; _aliases = aliases; _groupBy = groupBy; _mOnly = mOnly; _columns = new Dictionary <string, Column>(); _navDescriptors = new ColumnNavDescriptorCollection(); _navDescriptorKeys = new List <string>(10); }
/// <summary> /// 初始化 <see cref="UpdateExpressionVisitor"/> 类的新实例 /// </summary> public UpdateExpressionVisitor(DbQueryProviderBase provider, TableAliasCache aliases, Expression exp) : base(provider, aliases, exp) { _provider = provider; _aliases = aliases; }
/// <summary> /// 初始化 <see cref="GroupByExpressionVisitor"/> 类的新实例 /// </summary> public GroupByExpressionVisitor(DbQueryProviderBase provider, TableAliasCache aliases, DbExpression groupBy) : base(provider, aliases, groupBy != null ? groupBy.Expressions[0] : null, false) { }
/// <summary> /// 初始化 <see cref="WhereExpressionVisitor"/> 类的新实例 /// </summary> public WhereExpressionVisitor(DbQueryProviderBase provider, TableAliasCache aliases, DbExpression exp) : base(provider, aliases, exp.Expressions != null ? exp.Expressions[0] : null) { _expression = base.Expression; }
/// <summary> /// 初始化 <see cref="HavingExpressionVisitor"/> 类的新实例 /// </summary> public HavingExpressionVisitor(DbQueryProviderBase provider, TableAliasCache aliases, DbExpression having, DbExpression groupBy) : base(provider, aliases, having.Expressions != null ? having.Expressions[0] : null) { _groupBy = groupBy; _aliases = aliases; }
/// <summary> /// 初始化 <see cref="JoinExpressionVisitor"/> 类的新实例 /// </summary> public JoinExpressionVisitor(DbQueryProviderBase provider, TableAliasCache aliases, List <DbExpression> qJoin) : base(provider, aliases, null, false) { _qJoin = qJoin; _aliases = aliases; }