Exemple #1
0
 public static EntityFrameworkBuilder AddSqlServer <TDbContext>(
     this EntityFrameworkBuilder builder, IConfiguration configuration,
     Action <SqlServerDbContextOptionsBuilder> sqlServerOptionsAction = null) where TDbContext : DbContextBase
 {
     builder.Services.AddDbContext <TDbContext>(x =>
     {
         var dbContextType     = typeof(TDbContext);
         var optionDict        = configuration.GetSection("DbContexts").Get <DbContextConfigurationCollection>();
         var option            = optionDict.Get(dbContextType);
         var entryAssemblyName = !string.IsNullOrWhiteSpace(option.MigrationsAssembly)
             ? option.MigrationsAssembly
             : dbContextType.Assembly.GetName().Name;
         x.UseSqlServer(option.ConnectionString, options =>
         {
             sqlServerOptionsAction?.Invoke(options);
             var migrationsHistoryTable = string.IsNullOrWhiteSpace(option.TablePrefix)
                 ? "___ef_migrations_history"
                 : $"{option.TablePrefix}migrations_history";
             options.MigrationsHistoryTable(migrationsHistoryTable);
             options.MaxBatchSize(option.MaxBatchSize);
             options.MigrationsAssembly(entryAssemblyName);
         });
     });
     return(builder);
 }
 public static EntityFrameworkBuilder AddMySql <TDbContext>(
     this EntityFrameworkBuilder builder, IConfiguration configuration,
     Action <MySqlDbContextOptionsBuilder> mySqlOptionsAction = null) where TDbContext : DbContextBase
 {
     builder.Services.AddMySql <TDbContext>(configuration, mySqlOptionsAction);
     return(builder);
 }
Exemple #3
0
 public static EntityFrameworkBuilder AddNpgsql <TDbContext>(
     this EntityFrameworkBuilder builder, IConfiguration configuration,
     Action <NpgsqlDbContextOptionsBuilder> configure = null) where TDbContext : DbContextBase
 {
     builder.Services.AddNpgsql <TDbContext>(configuration, configure);
     return(builder);
 }
Exemple #4
0
 public static EntityFrameworkBuilder AddMySql <TDbContext1, TDbContext2>(
     this EntityFrameworkBuilder builder, IConfiguration configuration) where TDbContext1 : DbContextBase
     where TDbContext2 : DbContextBase
 {
     builder.Services.AddMySql <TDbContext1>(configuration);
     builder.Services.AddMySql <TDbContext2>(configuration);
     return(builder);
 }
    public static MicroserviceFrameworkBuilder UseEntityFramework(this MicroserviceFrameworkBuilder builder,
                                                                  Action <EntityFrameworkBuilder> configure)
    {
        var eBuilder = new EntityFrameworkBuilder(builder.Services);

        configure?.Invoke(eBuilder);
        builder.Services.UseEntityFramework();
        return(builder);
    }
Exemple #6
0
        public static EntityFrameworkBuilder AddSqlServer <TDbContext>(
            this EntityFrameworkBuilder builder, IConfiguration configuration) where TDbContext : DbContextBase
        {
            builder.Services.AddDbContext <TDbContext>(x =>
            {
                var dbContextType     = typeof(TDbContext);
                var entryAssemblyName = dbContextType.Assembly.GetName().Name;

                var store  = new EntityFrameworkOptionsConfiguration(configuration);
                var option = store.Get(dbContextType);

                x.UseSqlServer(option.ConnectionString, options => { options.MigrationsAssembly(entryAssemblyName); });
            });
            return(builder);
        }
Exemple #7
0
        public static EntityFrameworkBuilder AddSqlServer <TDbContext>(
            this EntityFrameworkBuilder builder, IConfiguration configuration) where TDbContext : DbContextBase
        {
            builder.Services.AddDbContext <TDbContext>(x =>
            {
                var dbContextType     = typeof(TDbContext);
                var entryAssemblyName = dbContextType.Assembly.GetName().Name;

                var store  = EntityFrameworkOptionsCollection.LoadFrom(configuration);
                var option = store.Get(dbContextType);
                if (option.DbContextType != dbContextType)
                {
                    throw new ArgumentException("DbContextType is not correct");
                }

                if (option.EnableSensitiveDataLogging)
                {
                    x.EnableSensitiveDataLogging();
                }

                x.UseSqlServer(option.ConnectionString, options => { options.MigrationsAssembly(entryAssemblyName); });
            });
            return(builder);
        }
Exemple #8
0
 public static EntityFrameworkBuilder AddSqlServerDbContextOptionsBuilderCreator(
     this EntityFrameworkBuilder builder)
 {
     builder.Services.AddSqlServerDbContextOptionsBuilderCreator();
     return(builder);
 }
 public static EntityFrameworkBuilder AddNpgsql <TDbContext>(
     this EntityFrameworkBuilder builder, IConfiguration configuration) where TDbContext : DbContextBase
 {
     builder.Services.AddNpgsql <TDbContext>(configuration);
     return(builder);
 }