public IWhere <T> FromTemplate <T>(IQueryTemplate <T> template, Action <IHelperOptions> cfg = null) { var data = new HelperOptions(); cfg?.Invoke(data); return(SqlBuilder <T>(data, template)); }
public SimpleSqlBuilder(HelperOptions options, IDbProvider provider, TableInfo info, IGenerateSqlFromExpressions writer, IQueryTemplate cteTemplate = null) { _options = options; _provider = provider; _info = info; _cteTemplate = cteTemplate; _writer = writer; options.EnsureTableName(_info); WriteFrom(provider, options); }
public string Build(QueryTemplateOption option, ITableMap table) { IQueryTemplate template = _container.Resolve <IQueryTemplate>(option.ToString()); if (template != null) { return(template.Build(table)); } else { throw new NotImplementedException(); } }
IWhere <T> SqlBuilder <T>(HelperOptions options, IQueryTemplate <T> template = null) => new SimpleSqlBuilder <T>( options, _provider, _infos.GetInfo(typeof(T)) , new ExpressionSqlGenerator(_provider.ExpressionsHelper, _infos, _provider) , template);