Пример #1
0
        public async Task <IActionResult> ChangePassword(UserAdminForEditDto userForEditDto)
        {
            if (ModelState.IsValid)
            {
                if (userForEditDto.ArePropertiesNotNull())
                {
                    var user = await _signInManager.UserManager.Users.FirstOrDefaultAsync(x => x.Id == userForEditDto.UserId);

                    if (user != null)
                    {
                        var result = await _userManager.ChangePasswordAsync(user, userForEditDto.OldPassword,
                                                                            userForEditDto.Password);

                        if (!result.Succeeded)
                        {
                            foreach (var error in result.Errors)
                            {
                                ModelState.AddModelError(string.Empty, error.Description.ToString());
                            }
                        }
                        else
                        {
                            return(RedirectToAction("Index", "Users"));
                        }
                    }
                }
            }

            return(View(userForEditDto));
        }
Пример #2
0
        public async Task <IActionResult> ChangePassword(Guid id)
        {
            var user = await _signInManager.UserManager.Users.FirstOrDefaultAsync(x => x.Id == id);

            var roles = await _userManager.GetRolesAsync(user);

            var role = roles.FirstOrDefault();

            if (user != null)
            {
                var model = new UserAdminForEditDto()
                {
                    UserId   = user.Id,
                    Email    = user.Email,
                    Username = user.UserName,
                    RoleName = role
                };

                return(View(model));
            }

            return(BadRequest("User error"));
        }