public async Task CreateUsers(string email, string password, string firstName, string lastName, int groupId, List <string> roleNameList) { try { await _roles.GenerateRolesFromPagesAsync(); ApplicationUser user = new ApplicationUser(); user.Email = email; user.UserName = email; user.EmailConfirmed = true; var result = await _userManager.CreateAsync(user, password); if (result.Succeeded) { //add to user profile UserProfile profile = new UserProfile(); profile.FirstName = firstName; profile.LastName = lastName; profile.Email = user.Email; profile.ApplicationUserId = user.Id; profile.GroupId = groupId; profile.ProfilePicture = "/upload/" + groupId + ".png"; await _context.UserProfile.AddAsync(profile); await _context.SaveChangesAsync(); foreach (string roleName in roleNameList) { await _roles.AddRoleByName(user.Id, roleName); } } } catch (Exception) { throw; } }