/// <summary> /// 初始化 <see cref="DbExpressionVisitor"/> 类的新实例 /// </summary> /// <param name="ag">表别名解析器</param> /// <param name="builder">SQL 语句生成器</param> public DbExpressionVisitor(AliasGenerator ag, ISqlBuilder builder) { _ag = ag; _builder = builder; _provider = (DbQueryProvider)_builder.Provider; _visitedStack = new MemberVisitedStack(); }
/// <summary> /// 初始化 <see cref="NpgUpdateExpressionVisitor"/> 类的新实例 /// </summary> /// <param name="ag">表别名解析器</param> /// <param name="builder">SQL 语句生成器</param> public NpgUpdateExpressionVisitor(AliasGenerator ag, ISqlBuilder builder) : base(ag, builder) { _ag = ag; _builder = builder; _visitedStack = base.VisitedStack; }
/// <summary> /// 初始化 <see cref="SQLiteUpdateExpressionVisitor"/> 类的新实例 /// </summary> /// <param name="ag">表别名解析器</param> /// <param name="builder">SQL 语句生成器</param> /// <param name="tree">更新语义</param> /// <param name="alias">指定的表达式别名</param> internal SQLiteUpdateExpressionVisitor(AliasGenerator ag, ISqlBuilder builder, DbQueryUpdateTree tree, string alias) : base(ag, builder) { _tree = tree; _alias = alias; _builder = builder; _visitedStack = base.VisitedStack; }
/// <summary> /// 初始化 <see cref="ColumnExpressionVisitor"/> 类的新实例 /// </summary> /// <param name="ag">表别名解析器</param> /// <param name="builder">SQL 语句生成器</param> /// <param name="tree">查询语义</param> public ColumnExpressionVisitor(AliasGenerator ag, ISqlBuilder builder, DbQuerySelectTree tree) : base(ag, builder) { _ag = ag; _builder = builder; _groupBy = tree.GroupBy; _includes = tree.Includes; _selectedColumns = new ColumnDescriptorCollection(); _visitedStack = base.VisitedStack; }
/// <summary> /// 实例化 <see cref="MethodCallExpressionVisitor"/> 类的新实例 /// </summary> /// <param name="visitor">表达式访问器</param> public MethodCallExpressionVisitor(DbExpressionVisitor visitor) { _visitor = visitor; _builder = visitor.SqlBuilder; _visitedStack = _visitor.VisitedStack; }