private void CreateUserAndRoles(string email, string password, string roleName, VerhuurContext context) { var userStore = new UserStore <ApplicationUser>(context); var userManager = new UserManager <ApplicationUser>(userStore); var roleStore = new RoleStore <IdentityRole>(context); var roleManager = new RoleManager <IdentityRole>(roleStore); //Create user ApplicationUser user = userManager.FindByName(email); if (user == null) { user = new ApplicationUser { UserName = email, Email = email, LockoutEnabled = false }; IdentityResult result = userManager.Create(user, password); if (!result.Succeeded) { throw new ApplicationException(result.Errors.ToString()); } } //Create roles IdentityRole role = roleManager.FindByName(roleName); if (role == null) { role = new IdentityRole(roleName); IdentityResult result = roleManager.Create(role); if (!result.Succeeded) { throw new ApplicationException(result.Errors.ToString()); } } //Associate user with role IList <string> rolesForUser = userManager.GetRoles(user.Id); if (!rolesForUser.Contains(role.Name)) { IdentityResult result = userManager.AddToRole(user.Id, roleName); if (!result.Succeeded) { throw new ApplicationException(result.Errors.ToString()); } } }
private void InitializeIdentityAndRoles(VerhuurContext context) { CreateUserAndRoles("*****@*****.**", "P@ssword1", "admin", context); }