コード例 #1
0
        public DataContext(string connectionString)
        {
            var connection = new OracleConnection(connectionString);
            var transaction = new DataContextTransaction(connection);
            DataBase = new DataBaseConfiguration(transaction);

            OnCreating();
        }
コード例 #2
0
ファイル: Startup.cs プロジェクト: pulidoo13/hellRazorAPI
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            var dbConfig = new DataBaseConfiguration();

            Configuration.GetSection("DataBase").Bind(dbConfig);

            services.AddDbContext <Context>(options => options.UseSqlServer(dbConfig.stringConfiguration, b => b.MigrationsAssembly("TormundAPI")));
            services.AddMvc();
        }
コード例 #3
0
        public IList <Users> GetAllUser()
        {
            using (var context = new DataBaseConfiguration())
            {
                /**
                 * connect to db and fetch all tests
                 */

                return(context.Users.ToList());
            }
        }
コード例 #4
0
 protected SharedDbContext(IConfiguration config, DataBaseConfiguration dataBaseConfiguration, DbContextOptions contextOptions)
     : base(contextOptions)
 {
     _config = config;
     DataBaseConfiguration = dataBaseConfiguration;
 }
コード例 #5
0
 public SharedDbContext(IConfiguration config, DataBaseConfiguration dataBaseConfiguration, DbContextOptions <SharedDbContext> options) : base(options)
 {
     _config = config;
     DataBaseConfiguration = dataBaseConfiguration;
 }
コード例 #6
0
 public IActionResult TestConfig([FromBody] DataBaseConfiguration form)
 {
     return(Ok(Json("Sucess")));
 }
コード例 #7
0
 public HomeController(ILogger <HomeController> logger, IOptions <DataBaseConfiguration> configdatabase)
 {
     _logger         = logger;
     _configDataBase = configdatabase.Value ?? throw new ArgumentException(nameof(DataBaseConfiguration));
 }
コード例 #8
0
        public static void SetDataBaseConfiguration(this DbContextOptionsBuilder optionsBuilder, DataBaseConfiguration dataBaseConfiguration)
        {
            string _stringConnection = string.Empty;

            // base.OnConfiguring(optionsBuilder);
            switch (dataBaseConfiguration.DataBaseType)
            {
            case Enums.DataBaseTypeConfiguration.ORACLE:
                _stringConnection = $"Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST= {dataBaseConfiguration.ServerName})(PORT=1521))(CONNECT_DATA=(SERVICE_NAME={dataBaseConfiguration.DataBaseName}))); User Id={dataBaseConfiguration.UserName};Password={dataBaseConfiguration.Password};Enlist=false;Pooling=true;Statement Cache Size=50;";
                optionsBuilder.UseOracle(_stringConnection, options =>
                {
                    options.MigrationsHistoryTable($"__{dataBaseConfiguration.Scherma}MigrationsHistory", dataBaseConfiguration.Scherma);
                });

                break;

            case Enums.DataBaseTypeConfiguration.POSTGRESQL:
                _stringConnection = $"Host={dataBaseConfiguration.ServerName};Username={dataBaseConfiguration.UserName};Password={dataBaseConfiguration.Password};Database={dataBaseConfiguration.DataBaseName}";
                optionsBuilder.UseNpgsql(_stringConnection, options =>
                {
                    // options.MigrationsHistoryTable($"__{dataBaseConfiguration.Scherma}MigrationsHistory", dataBaseConfiguration.Scherma);
                });
                break;

            case Enums.DataBaseTypeConfiguration.SQLSERVER:

                _stringConnection = $"Server={dataBaseConfiguration.ServerName};Database={dataBaseConfiguration.DataBaseName};User ID={dataBaseConfiguration.UserName};Password={dataBaseConfiguration.Password}; MultipleActiveResultSets=True";
                optionsBuilder.UseSqlServer(_stringConnection, options =>
                {
                    options.MigrationsHistoryTable($"__{dataBaseConfiguration.Scherma}MigrationsHistory", dataBaseConfiguration.Scherma);
                    //options.MigrationsAssembly("InfraEstructure");
                });
                break;

            case Enums.DataBaseTypeConfiguration.MYSQL:

                _stringConnection = $"server={dataBaseConfiguration.ServerName};port={dataBaseConfiguration.Port};user={dataBaseConfiguration.UserName};password={dataBaseConfiguration.Password};database={dataBaseConfiguration.DataBaseName}";
                optionsBuilder.UseMySQL(_stringConnection, options =>
                {
                    //options.EnableRetryOnFailure();
                    options.MigrationsHistoryTable($"__{dataBaseConfiguration.Scherma}MigrationsHistory", dataBaseConfiguration.Scherma);
                    // options.MigrationsAssembly("Sharedkernel.Data");
                });
                break;
            }
        }