public static IServiceCollection AddCustomMSSQLDbContext <TDbContext>(this IServiceCollection services, IConfiguration configuration) where TDbContext : DbContext
        {
            services
            .AddEntityFrameworkSqlServer()
            .AddDbContextPool <TDbContext>(options =>
            {
                options.UseSqlServer(configuration.GetConnectionString("MSSQL"),
                                     sqlServerOptionsAction: sqlOptions =>
                {
                    sqlOptions
                    .EnableRetryOnFailure(
                        maxRetryCount: 15,
                        maxRetryDelay: TimeSpan.FromSeconds(30),
                        errorNumbersToAdd: null);
                }
                                     );
            },
                                           10 //Connection pool size
                                              //,ServiceLifetime.Scoped
                                           );

            services.AddSingleton(settings => {
                CommonGlobalAppSingleSettings commonGlobalAppSingleSettings = new CommonGlobalAppSingleSettings();
                commonGlobalAppSingleSettings.MssqlConnectionString         = configuration.GetConnectionString("MSSQL");
                return(commonGlobalAppSingleSettings);
            });

            return(services);
        }
Beispiel #2
0
 public Handler(CommonGlobalAppSingleSettings commonGlobalAppSingleSettings)
 {
     _commonGlobalAppSingleSettings = commonGlobalAppSingleSettings;
 }