public async static Task Main(string[] args) { var host = CreateHostBuilder(args).Build(); using var scope = host.Services.CreateScope(); var services = scope.ServiceProvider; try { var roleManager = services.GetRequiredService <RoleManager <IdentityRole> >(); var userManager = services.GetRequiredService <UserManager <ApplicationUser> >(); await ApplicationDbContextSeed.SeedDefaultRolesAsync(roleManager); await ApplicationDbContextSeed.SeedDefaultAdministratorAsync(userManager); } catch (Exception exception) { var logger = scope.ServiceProvider.GetRequiredService <ILogger <Program> >(); logger.LogError(exception, "an error occurred while seeding the database"); throw; } await host.RunAsync(); }