Exemplo n.º 1
0
        public IActionResult CreateAdmins()
        {
            var users = _userManager.Users.ToList();
            var roles = _roleManager.Roles.ToList();

            var admins = _userManager.GetUsersInRoleAsync("Admin");

            var model = new AdminCreatorViewModel
            {
                User = users.Select(x => new SelectListItem()
                {
                    Text     = x.Email,
                    Value    = x.Email,
                    Selected = false
                }),
                Roles = roles.Select(x => new SelectListItem()
                {
                    Text     = x.Name,
                    Value    = x.Name,
                    Selected = false
                }),
                Admins = admins
            };

            return(View(model));
        }
Exemplo n.º 2
0
        public async Task <IActionResult> CreateAdmins(AdminCreatorViewModel user)
        {
            var findUser = _userManager.FindByIdAsync(user.Id);

            var person = await _userManager.FindByEmailAsync(user.Id);

            var getUser = _userManager.Users.FirstOrDefault(x => x.UserName == person.UserName);

            var getAllRoles = await _userManager.GetRolesAsync(person);

            //Tar bort alla befintliga roller på användaren för att inte få dubletter
            await _userManager.RemoveFromRolesAsync(person, getAllRoles);

            //Lägger till den nya rollen på användaren
            await _userManager.AddToRoleAsync(getUser, user.Role);

            await _signInManager.SignInAsync(getUser, false);

            _logger.LogInformation("User role updated");

            return(RedirectToAction(nameof(Index)));
        }