Пример #1
0
        public async Task <IActionResult> OnPostEditAsync(string userId, List <string> roles)
        {
            // получаем пользователя
            LenrooUser user = await _userManager.FindByIdAsync(userId);

            if (user != null)
            {
                // получем список ролей пользователя
                var userRoles = await _userManager.GetRolesAsync(user);

                // получаем все роли
                var allRoles = _roleManager.Roles.ToList();
                // получаем список ролей, которые были добавлены
                var addedRoles = roles.Except(userRoles);
                // получаем роли, которые были удалены
                var removedRoles = userRoles.Except(roles);

                await _userManager.AddToRolesAsync(user, addedRoles);

                await _userManager.RemoveFromRolesAsync(user, removedRoles);

                return(RedirectToPage("./UserList"));
            }

            return(NotFound());
        }
Пример #2
0
        public async Task <IActionResult> OnGetDeleteAsync(string userId)
        {
            LenrooUser user = await _userManager.FindByIdAsync(userId);

            if (user != null)
            {
                IdentityResult result = await _userManager.DeleteAsync(user);

                if (result.Succeeded)
                {
                    StatusMessage = "Пользователь успешно удален";
                }
                else
                {
                    StatusMessage = " Ошибка. Пользователь не удален.";
                }
            }
            return(RedirectToPage("./UserList"));
        }
Пример #3
0
        public async Task <IActionResult> OnPostAddedUserAsync()
        {
            if (ModelState.IsValid)
            {
                var user = new LenrooUser {
                    UserName = Input.Login, Email = Input.Login, EmailConfirmed = true
                };
                var result = await _userManager.CreateAsync(user, Input.Password + "Lbp2900!");

                if (result.Succeeded)
                {
                    return(RedirectToPage("./UserList"));
                }
                foreach (var error in result.Errors)
                {
                    ModelState.AddModelError(string.Empty, error.Description);
                }
            }
            return(Page());
        }
Пример #4
0
        public async Task <IActionResult> OnGetAsync(string userId)
        {
            // получаем пользователя
            LenrooUser user = await _userManager.FindByIdAsync(userId);

            if (user != null)
            {
                // получем список ролей пользователя
                var userRoles = await _userManager.GetRolesAsync(user);

                var allRoles = _roleManager.Roles.ToList();
                changeRole = new ChangeRole
                {
                    UserId    = user.Id,
                    UserEmail = user.Email,
                    UserRoles = userRoles,
                    AllRoles  = allRoles
                };
                return(Page());
            }

            return(NotFound());
        }