diff --git a/Hcs.WebApp/Program.cs b/Hcs.WebApp/Program.cs index 63a0857..2b0645b 100644 --- a/Hcs.WebApp/Program.cs +++ b/Hcs.WebApp/Program.cs @@ -43,16 +43,22 @@ builder.Services .AddEntityFrameworkStores() .AddDefaultTokenProviders(); +string hcsConnection; if (builder.Environment.IsDevelopment()) { - var hcsProdConnection = builder.Configuration.GetConnectionString("HcsSit2Connection") ?? throw new InvalidOperationException("Не удалось получить значение из 'HcsSit2Connection'"); - builder.Services.AddDbContextFactory(options => options.UseSqlServer(hcsProdConnection)); + hcsConnection = builder.Configuration.GetConnectionString("HcsSit2Connection") ?? throw new InvalidOperationException("Не удалось получить значение из 'HcsSit2Connection'"); } else { - var hcsProdConnection = builder.Configuration.GetConnectionString("HcsProdConnection") ?? throw new InvalidOperationException("Не удалось получить значение из 'HcsProdConnection'"); - builder.Services.AddDbContextFactory(options => options.UseSqlServer(hcsProdConnection)); + hcsConnection = builder.Configuration.GetConnectionString("HcsProdConnection") ?? throw new InvalidOperationException("Не удалось получить значение из 'HcsProdConnection'"); } +builder.Services.AddDbContextFactory(options => options.UseSqlServer(hcsConnection, options => +{ + options.EnableRetryOnFailure( + maxRetryCount: 6, + maxRetryDelay: TimeSpan.FromSeconds(30), + errorNumbersToAdd: null); +})); #if USE_MOCK builder.Services.AddTransient();