//[ValidateAntiForgeryToken] public async Task <IActionResult> ChangePassword([FromBody] ChangePasswordViewModel value) { ICollection <ValidationResult> results = new List <ValidationResult>(); if (!value.IsModelValid(out results)) { return(Json(BadRequest(results))); } var user = await GetCurrentUserAsync(); if (user != null) { IdentityResult result = await _userManager.ChangePasswordAsync(user, value.OldPassword, value.NewPassword); if (result.Succeeded) { await _signInManager.SignInAsync(user, isPersistent : false); _logger.LogInformation(3, "User changed their password successfully."); return(Json(Ok("Password Changed Successfully"))); } AddErrors(result); return(Json(BadRequest(result))); } return(Json(Forbid())); }