Пример #1
0
        /// <summary>
        /// Configure the options to use the <see cref="IConfigurationSection"/>
        /// </summary>
        /// <param name="builder"></param>
        /// <param name="section"></param>
        /// <returns></returns>
        public static DbContextOptionsBuilder ConfigureSqlServer(this DbContextOptionsBuilder builder, IConfigurationSection section)
        {
            var str = $"Data Source={section.Server()}; Initial Catalog={section.Database()};MultipleActiveResultSets=True;User id={section.User()}; PWD={section.Password()}; Integrated Security={section.IsIntegratedSecurity()}";


            return(builder.ConfigureSqlServer(str));
        }
Пример #2
0
 protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
 {
     if (!optionsBuilder.IsConfigured)
     {
         optionsBuilder.ConfigureSqlServer <Context>("Server=(localdb)\\MSSQLLocalDB;Initial Catalog=CatalogDb;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=True;ApplicationIntent=ReadWrite;MultiSubnetFailover=False");
     }
 }
Пример #3
0
 public static DbContextOptionsBuilder ConfigureFromSettings <T>(this DbContextOptionsBuilder optionsBuilder, IConfiguration configuration) where T : DbContext
 {
     bool.TryParse(configuration["InMemoryDB"], out bool inMemory);
     if (inMemory)
     {
         optionsBuilder.ConfigureInMemory <T>(configuration["ConnectionString"]);
     }
     else
     {
         optionsBuilder.ConfigureSqlServer <T>(configuration["ConnectionString"]);
     }
     return(optionsBuilder);
 }
Пример #4
0
 /// <summary>
 /// Configure the options using the <see cref="IConfiguration"/>
 /// </summary>
 /// <param name="builder"></param>
 /// <param name="config"></param>
 public static void Configure(this DbContextOptionsBuilder builder, IConfiguration config)
 {
     if (!string.IsNullOrEmpty(config.ConnectionString()))
     {
         builder.ConfigureSqlServer(config.ConnectionString());
     }
     else if (config.MicrosoftSql().Exists())
     {
         builder.UseMySql(config.MicrosoftSql().Value, mySqlOptions => mySqlOptions
                          .ServerVersion(new Version(10, 3, 21), ServerType.MySql));
     }
     else
     {
         builder.ConfigureInMemoryDatabase();
     }
 }
Пример #5
0
        //public static DbContextOptionsBuilder ConfigureFromSettings(this DbContextOptionsBuilder optionsBuilder, IConfiguration configuration)
        //{
        //    switch (configuration["DatabaseType"])
        //    {
        //        case "InMemory":
        //            optionsBuilder.ConfigureInMemory(configuration["DatabaseConnection"]);
        //            break;

        //        case "SqlServer":
        //            optionsBuilder.ConfigureSqlServer(configuration["DatabaseConnection"]);
        //            break;

        //        case "SqlLite":
        //            optionsBuilder.ConfigureSqlLite(configuration["DatabaseConnection"]);
        //            break;
        //    }
        //    return optionsBuilder;
        //}

        public static DbContextOptionsBuilder ConfigureFromSettings <T>(this DbContextOptionsBuilder optionsBuilder, IConfiguration configuration) where T : DbContext
        {
            switch (configuration["DatabaseType"])
            {
            case "InMemory":
                optionsBuilder.ConfigureInMemory <T>(configuration["DatabaseConnection"]);
                break;

            case "SqlServer":
                optionsBuilder.ConfigureSqlServer <T>(configuration["DatabaseConnection"]);
                break;

            case "SqlLite":
                optionsBuilder.ConfigureSqlLite <T>(configuration["DatabaseConnection"]);
                break;
            }
            return(optionsBuilder);
        }