public async Task<ActionResult> SetPassword(SetPasswordViewModel model) { ViewBag.ManageNavigationKey = "Password"; if (ModelState.IsValid) { var result = await _userManager.AddPasswordAsync(User.Identity.GetUserId().ParseGuid(), model.NewPassword); if (result.Succeeded) { var user = await _userManager.FindByIdAsync(User.Identity.GetUserId().ParseGuid()); if (user != null) await _signInManager.SignInAsync(user, false, false); AddSuccessMessage("Your password has succesfully been set."); return Redirect(Url.ChangePassword()); } foreach (var error in result.Errors) AddErrorMessage(error); } return View(model); }
public async Task<ActionResult> SetPassword(SetPasswordViewModel model) { if (ModelState.IsValid) { var result = await _userManager.AddPasswordAsync(User.Identity.GetUserId().ParseGuid(), model.NewPassword); if (result.Succeeded) { var user = await _userManager.FindByIdAsync(User.Identity.GetUserId().ParseGuid()); if (user != null) { await _signInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false); } return RedirectToAction("Index", new { Message = ManageMessageId.SetPasswordSuccess }); } AddErrors(result); } // If we got this far, something failed, redisplay form return View(model); }