private static async Task CreationOfUsers(IServiceProvider serviceProvider) { var userManager = serviceProvider.GetRequiredService <UserManager <ApplicationUser> >(); IOptions <InitializationOptions> optionsAccessor = serviceProvider.GetRequiredService <IOptions <InitializationOptions> >(); InitializationOptions options = optionsAccessor.Value; int userCounter = -1; foreach (string user in options.UserNames) { userCounter++; var _user = await userManager.FindByNameAsync(user); if (_user == null) { var appUser = new ApplicationUser { UserName = user }; var creationOfUser = await userManager.CreateAsync(appUser, options.PassWords[userCounter]); if (creationOfUser.Succeeded) { await userManager.AddToRoleAsync(appUser, options.Roles[userCounter]); } } } }
private static async Task CreationOfRoles(IServiceProvider serviceProvider) { var roleManager = serviceProvider.GetRequiredService <RoleManager <IdentityRole> >(); IOptions <InitializationOptions> optionsAccessor = serviceProvider.GetRequiredService <IOptions <InitializationOptions> >(); InitializationOptions options = optionsAccessor.Value; foreach (var roleName in options.Roles) { var roleExists = await roleManager.RoleExistsAsync(roleName); if (!roleExists) { await roleManager.CreateAsync(new IdentityRole(roleName)); } } }