public async Task <Result> RequestPasswordReset(string login) { var user = await _userManager.GetUserByLogin(login); if (user == null) { throw new UserNotFoundException(); } var token = await _userManager.GeneratePasswordResetTokenAsync(user); var mailMessage = await _mailBuilder.ForgotPasswordEmail().Build(new ForgotPasswordEmailDetails { Name = user.UserName, PasswordResetUrl = _emailUrlBuilder.BuildPasswordResetFormUrl(token, user.Email) }, new MailAddress(user.Email, user.UserName)); await _mailService.SendAsync(mailMessage); return(new Result(true)); }