예제 #1
0
 public BaseSqlBuilder(
     ITableNameResolver tableNameResolver,
     IColumnNameResolver columnNameResolver)
 {
     this.tableNameResolver  = tableNameResolver;
     this.columnNameResolver = columnNameResolver;
 }
예제 #2
0
 public SqliteBuilder(
     ITableNameResolver tableNameResolver,
     IColumnNameResolver columnNameResolver) : base(
         tableNameResolver,
         columnNameResolver)
 {
 }
예제 #3
0
 public TSqlBuilder(
     ITableNameResolver tableNameResolver,
     IColumnNameResolver columnNameResolver) : base(
         tableNameResolver,
         columnNameResolver)
 {
     this.schemaResolver = new DefaultSchemaResolver(DefaultSchema);
 }
예제 #4
0
 public TSqlBuilder(
     ITableNameResolver tableNameResolver,
     IColumnNameResolver columnNameResolver,
     ISchemaResolver schemaResolver) : base(
         tableNameResolver,
         columnNameResolver)
 {
     this.schemaResolver = schemaResolver;
 }
예제 #5
0
 public SqliteDataContext(
     SqliteConnectionProvider connectionProvider,
     ITableNameResolver tableNameResolver,
     IColumnNameResolver columnNameResolver) : base(
         connectionProvider,
         new SqliteBuilder(tableNameResolver, columnNameResolver),
         new SqlCache())
 {
 }
예제 #6
0
 public MySqlDataContext(
     MySqlConnectionProvider connectionProvider,
     ITableNameResolver tableNameResolver,
     IColumnNameResolver columnNameResolver) : base(
         connectionProvider,
         new MySqlBuilder(tableNameResolver, columnNameResolver),
         new SqlCache())
 {
 }
 public SqlServerDataContext(
     string connectionString,
     ITableNameResolver tableNameResolver,
     IColumnNameResolver columnNameResolver) : base(
         new SqlServerConnectionProvider(connectionString),
         new TSqlBuilder(tableNameResolver, columnNameResolver),
         new SqlCache())
 {
 }
 public SqlServerDataContext(
     SqlServerConnectionProvider connectionProvider,
     ITableNameResolver tableNameResolver,
     IColumnNameResolver columnNameResolver,
     ISchemaResolver schemaResolver) : base(
         connectionProvider,
         new TSqlBuilder(tableNameResolver, columnNameResolver, schemaResolver),
         new SqlCache())
 {
 }
 public SqlServerDataContext(
     SqlServerConnectionProvider connectionProvider,
     ITableNameResolver tableNameResolver,
     IColumnNameResolver columnNameResolver,
     string defaultSchema) : base(
         connectionProvider,
         new TSqlBuilder(tableNameResolver, columnNameResolver, defaultSchema),
         new SqlCache())
 {
 }
        public static IDataContext SetupDataContext(
            Type dataContextType,
            ITableNameResolver tableNameResolver   = null,
            IColumnNameResolver columnNameResolver = null)
        {
            // check whether we are dealing with a type that implement IDataContext
            if (!IsDataContext(dataContextType))
            {
                throw new ArgumentException($"Type {dataContextType.Name} does not implement IDataContext.");
            }

            // return the data context for the given type
            if (IsInMemory(dataContextType))
            {
                return(new InMemoryDataContext());
            }
            else if (IsSqlServer(dataContextType))
            {
                MsSqlTestHelper.CreateTestDatabase(TestContext.CurrentContext.Test.FullName);
                return(new SqlServerDataContext(
                           MsSqlTestHelper.GetTestConnectionString(TestContext.CurrentContext.Test.FullName),
                           tableNameResolver ?? new DefaultTableNameResolver(),
                           columnNameResolver ?? new DefaultColumnNameResolver()));
            }
            else if (IsMySql(dataContextType))
            {
                MySqlTestHelper.CreateTestDatabase(TestContext.CurrentContext.Test.FullName);
                return(new MySqlDataContext(
                           MySqlTestHelper.GetTestConnectionString(TestContext.CurrentContext.Test.FullName),
                           tableNameResolver ?? new DefaultTableNameResolver(),
                           columnNameResolver ?? new DefaultColumnNameResolver()));
            }
            else if (IsSqlite(dataContextType))
            {
                SqliteTestHelper.CreateTestDatabase(TestContext.CurrentContext.Test.FullName);
                return(new SqliteDataContext(
                           SqliteTestHelper.GetTestConnectionString(TestContext.CurrentContext.Test.FullName),
                           tableNameResolver ?? new DefaultTableNameResolver(),
                           columnNameResolver ?? new DefaultColumnNameResolver()));
            }
            else
            {
                throw new ArgumentException($"Type {dataContextType} is not supported, add support in {nameof(Helpers.DataContextTestHelper)}.cs");
            }
        }
예제 #11
0
 /// <summary>
 /// 设置列名解析器
 /// </summary>
 /// <param name="resolver">在请求列名格式时使用解析器</param>
 public static void SetColumnNameResolver(IColumnNameResolver resolver)
 {
     _columnNameResolver = resolver;
 }
예제 #12
0
 protected SqlQueryBuilderBase(ITableNameResolver tableNameResolver, IColumnNameResolver columnNameResolver, IEnumerable <SqlClause> clauses = null)
 {
     TableNameResolver  = tableNameResolver;
     ColumnNameResolver = columnNameResolver;
     _clauses           = clauses?.ToList() ?? new List <SqlClause>();
 }
예제 #13
0
 public MsSQLQueryBuilder(ISQLTemplate template, ITableNameResolver tblresolver, IColumnNameResolver colresolver)
     : base(template, tblresolver, colresolver)
 {
 }