public async Task <AccountResponse> ForgotPassword(string userName, string url) { var userToReset = await _accountProvider.Find(userName); string code = await _accountProvider.GeneratePasswordResetToken(userToReset.Id); var callbackUrl = string.Format("{0}{1}/{2}?userId={3}&code={4}", url, "Account", "ResetPassword", userToReset.Id, UtilityHelper.EncodeUrlCode(code)); IProcessEmail processEmail = new ProcessEmail(userName); processEmail.SendPasswordResetEmail(userToReset, callbackUrl); return(new AccountResponse { Success = true, }); }