private Tuple <string, IDictionary <string, object> > GetSqlQueryAndParms(SelectClauseBuildMode mode) { this.sqlWrapper.ExecuteSqlBagBuilder(this.TableOrViewName, mode); var sqlQuery = this.sqlWrapper.GetSqlClause(); var parameters = this.sqlWrapper.GetSqlParameters(); return(Tuple.Create(sqlQuery, parameters)); }
/// <summary> /// 初始化<c>SqlBag</c>实例 /// </summary> /// <param name="tableOrViewName">表/视图名称</param> /// <param name="tableOrViewAlias">表/视图的匿名, 为 null 表示不用匿名表/视图</param> /// <param name="fields">SELECT 字段集合(field/alias field), 值为 null 表示改字段不使用匿名</param> /// <param name="operators">字段操作集合</param> /// <param name="model">生成 SELECT 子句的模式 [Raw, WithAlias, StringWithAlias]</param> public SqlBag(string tableOrViewName, string tableOrViewAlias, IDictionary<string, string> fields, IEnumerable<SqlOperator> operators, SelectClauseBuildMode model) { this.sqlSelectBuilder = new SqlSelectClauseBuilder(tableOrViewName, tableOrViewAlias, model); foreach (var field in fields) this.sqlSelectBuilder.AddField(field.Key, field.Value); this.sqlWhereBuilder = new SqlWhereClauseBuilder(); foreach (var item in operators) this.sqlWhereBuilder.AddParameterValue(item.Name, item.Operator, item.Value); }
/// <summary> /// 初始化<c>SqlSelectClauseBuilder</c>实例 /// </summary> /// <param name="tableName">表/视图名称</param> /// <param name="tableAlias">表/视图的匿名</param> /// <param name="model">生成 SELECT 子句的模式 [Raw, WithAlias, StringWithAlias]</param> public SqlSelectClauseBuilder(string tableName, string tableAlias, SelectClauseBuildMode model) { if (!this.ValidateTableViewNameOrAlias(tableName)) throw new ArgumentException(tableName); if (tableAlias != null && !this.ValidateTableViewNameOrAlias(tableAlias)) throw new ArgumentException(tableAlias); this.tableName = Tuple.Create(tableName, tableAlias); this.selectClauseBuildMode = model; }
/// <summary> /// 初始化<c>SqlSelectClauseBuilder</c>实例 /// </summary> /// <param name="tableName">表/视图名称</param> /// <param name="tableAlias">表/视图的匿名</param> /// <param name="model">生成 SELECT 子句的模式 [Raw, WithAlias, StringWithAlias]</param> public SqlSelectClauseBuilder(string tableName, string tableAlias, SelectClauseBuildMode model) { if (!this.ValidateTableViewNameOrAlias(tableName)) { throw new ArgumentException(tableName); } if (tableAlias != null && !this.ValidateTableViewNameOrAlias(tableAlias)) { throw new ArgumentException(tableAlias); } this.tableName = Tuple.Create(tableName, tableAlias); this.selectClauseBuildMode = model; }
private readonly Tuple<string, string> tableName; // name/alias #endregion Fields #region Constructors /// <summary> /// 初始化<c>SqlSelectClauseBuilder</c>实例 /// </summary> /// <param name="tableName">表/视图名称</param> /// <param name="model">生成 SELECT 子句的模式 [Raw, WithAlias, StringWithAlias]</param> public SqlSelectClauseBuilder(string tableName, SelectClauseBuildMode model) : this(tableName, null, model) { }
/// <summary> /// 建置 SQL 包 /// </summary> /// <param name="tableOrView">Table 或 View 名称</param> /// <param name="model">生成 SELECT 子句的模式 [Raw, WithAlias, StringWithAlias]</param> public void ExecuteSqlBagBuilder(string tableOrView, SelectClauseBuildMode model) { this.ExecuteSqlBagBuilder(tableOrView, this.GetFieldsFromWebForm(), this.GetReportOperators(), model); }
private void ExecuteSqlBagBuilder(string table, IDictionary <string, string> fields, IEnumerable <SqlOperator> operators, SelectClauseBuildMode model) { this.sqlBag = new SqlBag(table, fields, operators, model); }
/// <summary> /// 初始化<c>SqlBag</c>实例 /// </summary> /// <param name="tableOrViewName">表/视图名称</param> /// <param name="tableOrViewAlias">表/视图的匿名, 为 null 表示不用匿名表/视图</param> /// <param name="fields">SELECT 字段集合(field/alias field), 值为 null 表示改字段不使用匿名</param> /// <param name="operators">字段操作集合</param> /// <param name="model">生成 SELECT 子句的模式 [Raw, WithAlias, StringWithAlias]</param> public SqlBag(string tableOrViewName, string tableOrViewAlias, IDictionary <string, string> fields, IEnumerable <SqlOperator> operators, SelectClauseBuildMode model) { this.sqlSelectBuilder = new SqlSelectClauseBuilder(tableOrViewName, tableOrViewAlias, model); foreach (var field in fields) { this.sqlSelectBuilder.AddField(field.Key, field.Value); } this.sqlWhereBuilder = new SqlWhereClauseBuilder(); foreach (var item in operators) { this.sqlWhereBuilder.AddParameterValue(item.Name, item.Operator, item.Value); } }
/// <summary> /// 初始化<c>SqlBag</c>实例 /// </summary> /// <param name="tableOrViewName">表/视图名称</param> /// <param name="fields">SELECT 字段集合(field/alias field), 值为 null 表示改字段不使用匿名</param> /// <param name="operators">字段操作集合</param> /// <param name="model">生成 SELECT 子句的模式 [Raw, WithAlias, StringWithAlias]</param> public SqlBag(string tableOrViewName, IDictionary <string, string> fields, IEnumerable <SqlOperator> operators, SelectClauseBuildMode model) : this(tableOrViewName, null, fields, operators, model) { }
private Tuple<string, IDictionary<string, object>> GetSqlQueryAndParms(SelectClauseBuildMode mode) { this.sqlWrapper.ExecuteSqlBagBuilder(this.TableOrViewName, mode); var sqlQuery = this.sqlWrapper.GetSqlClause(); var parameters = this.sqlWrapper.GetSqlParameters(); return Tuple.Create(sqlQuery, parameters); }
/// <summary> /// 初始化<c>SqlSelectClauseBuilder</c>实例 /// </summary> /// <param name="tableName">表/视图名称</param> /// <param name="model">生成 SELECT 子句的模式 [Raw, WithAlias, StringWithAlias]</param> public SqlSelectClauseBuilder(string tableName, SelectClauseBuildMode model) : this(tableName, null, model) { }
private void ExecuteSqlBagBuilder(string table, IDictionary<string, string> fields, IEnumerable<SqlOperator> operators, SelectClauseBuildMode model) { this.sqlBag = new SqlBag(table, fields, operators, model); }
/// <summary> /// 初始化<c>SqlBag</c>实例 /// </summary> /// <param name="tableOrViewName">表/视图名称</param> /// <param name="fields">SELECT 字段集合(field/alias field), 值为 null 表示改字段不使用匿名</param> /// <param name="operators">字段操作集合</param> /// <param name="model">生成 SELECT 子句的模式 [Raw, WithAlias, StringWithAlias]</param> public SqlBag(string tableOrViewName, IDictionary<string, string> fields, IEnumerable<SqlOperator> operators, SelectClauseBuildMode model) : this(tableOrViewName, null, fields, operators, model) { }