public DbContextOptions <TContext> Create <TContext>() where TContext : DbContext { var connectionString = databaseSettings.ConnectionString; var optionsBuilder = new DbContextOptionsBuilder <TContext>() .UseSqlServer(connectionString, sqlOptions => { sqlOptions.EnableRetryOnFailure(); upgradeManager.EnsureDbIsUpgraded(connectionString); }) .UseLoggerFactory(loggerFactory); #if DEBUG optionsBuilder.EnableSensitiveDataLogging(); #endif return(optionsBuilder.Options); }