예제 #1
0
        public async Task <IActionResult> TryResetPassword(ResetPasswordAccountView viewModel)
        {
            try
            {
                await _accountService.ResetPassword(viewModel);

                return(RedirectToAction("LogIn", "Account"));
            }
            catch (AccountException ex)
            {
                ModelState.AddModelError(string.Empty, ex.Message);
                return(View());
            }
        }
예제 #2
0
        public async Task ResetPassword(ResetPasswordAccountView viewModel)
        {
            ApplicationUser user = await _userManager.FindByIdAsync(viewModel.UserId);

            if (user is null)
            {
                throw new AccountException("User not found.");
            }

            if (!viewModel.Password.Equals(viewModel.ConfirmPassword))
            {
                throw new AccountException("Passwords are different.");
            }

            IdentityResult result = await _userManager.ResetPasswordAsync(user, viewModel.Token, viewModel.Password);
        }