public static async Task Main(string[] args) { var host = CreateHostBuilder(args).Build(); using (var scope = host.Services.CreateScope()) { var services = scope.ServiceProvider; var loggerFactory = services.GetRequiredService <ILoggerFactory>(); try { var context = services.GetRequiredService <StoreContext>(); var identityContext = services.GetRequiredService <AppIdentityDbContext>(); var userManager = services.GetRequiredService <UserManager <AppUser> >(); var roleManager = services.GetRequiredService <RoleManager <AppRole> >(); await context.Database.MigrateAsync(); await StoreContextSeed.SeedDeliveryMethods(context); await identityContext.Database.MigrateAsync(); await IdentitySeed.SeedUsers(userManager, roleManager); } catch (Exception ex) { var logger = loggerFactory.CreateLogger <Program>(); logger.LogError(ex, "An Error Occured during migration"); } } await host.RunAsync(); }
public static async Task Main(string[] args) { var host = CreateHostBuilder(args).Build(); using (var scope = host.Services.CreateScope()) { var dbContext = scope.ServiceProvider.GetRequiredService <AppDbContext>(); var userManager = scope.ServiceProvider.GetRequiredService <UserManager <IdentityUser> >(); var roleManager = scope.ServiceProvider.GetRequiredService <RoleManager <IdentityRole> >(); dbContext.Database.Migrate(); await IdentitySeed.SeedRoles(roleManager); await IdentitySeed.SeedUsers(userManager); } host.Run(); }