public virtual async Task<JsonResult> Login(LoginModel loginModel, string returnUrl = "") { if (!ModelState.IsValid) { throw new UserFriendlyException("Your form is invalid!"); } var result = await _userManager.LoginAsync(loginModel.EmailAddress, loginModel.Password); if (result.Result != AbpLoginResultType.Success) { // ErrorInfo error = CreateErrorInfoForFailedLoginAttempt(result.Result, loginModel.EmailAddress); throw CreateExceptionForFailedLoginAttempt(result.Result, loginModel.EmailAddress); // throw new UserFriendlyException("Invalid user name or password!"); // return Json(new MvcAjaxResponse { Error = error }); } await SignInAsync(result.User, loginModel.RememberMe); if (string.IsNullOrWhiteSpace(returnUrl)) { returnUrl = Request.ApplicationPath; } return Json(new MvcAjaxResponse { TargetUrl = returnUrl }); }
public virtual async Task<JsonResult> Login(LoginModel loginModel, string returnUrl = "/") { if (!ModelState.IsValid) { throw new UserFriendlyException("Your form is invalid!"); } var user = await _userManager.FindAsync(loginModel.EmailAddress, loginModel.Password); if (user == null) { throw new UserFriendlyException("Invalid user name or password!"); } await SignInAsync(user, loginModel.RememberMe); return Json(new AbpMvcAjaxResponse { TargetUrl = returnUrl }); }