public static void Main(string[] args) { var host = CreateHostBuilder(args).Build(); using (var scope = host.Services.CreateScope()) { var services = scope.ServiceProvider; try { var context = services.GetRequiredService <AccountDbContext>(); AccountDbInitializer.Initialize(context); } catch (Exception ex) { var logger = services.GetRequiredService <ILogger <Program> > (); logger.LogError(ex, "An error occurred while seeding the database."); } } host.Run(); }
public static async Task Main(string[] args) { var host = BuildWebHost(args); using (var scope = host.Services.CreateScope()) { var services = scope.ServiceProvider; try { var context = services.GetRequiredService <AccountDbContext>(); var userManager = services.GetRequiredService <UserManager <ApplicationUser> >(); var roleManager = services.GetRequiredService <RoleManager <IdentityRole> >(); var dbInitializerLogger = services.GetRequiredService <ILogger <AccountDbInitializer> >(); await AccountDbInitializer.Initialize(context, userManager, roleManager, dbInitializerLogger).ConfigureAwait(false); } catch (Exception ex) { var logger = services.GetRequiredService <ILogger <Program> >(); logger.LogError(ex, "An error occurred while seeding the AccountDb database."); } try { var context = services.GetRequiredService <ApplicationDbContext>(); await ApplicationDbInitializer.Initialize(context).ConfigureAwait(false); } catch (Exception ex) { var logger = services.GetRequiredService <ILogger <Program> >(); logger.LogError(ex, "An error occurred while seeding the ApplicationDb database."); } try { var contextOptions = services.GetRequiredService <DbContextOptions <HangfireDbContext> >(); await HangfireDbInitializer.InitializeAsync(contextOptions).ConfigureAwait(false); } catch (Exception ex) { var logger = services.GetRequiredService <ILogger <Program> >(); logger.LogError(ex, "An error occurred while seeding the HangfireDb database."); } } host.Run(); }