public async Task <IActionResult> ForgotPassword(ForgotPasswordViewModel model) { if (ModelState.IsValid) { var user = await UsrMgr.FindByEmailAsync(model.Email); if (user != null && await UsrMgr.IsEmailConfirmedAsync(user)) { var token = await UsrMgr.GeneratePasswordResetTokenAsync(user); var passwordResetLink = Url.Action("ResetPassword", "Account", new { email = model.Email, token = token }, Request.Scheme); logger.Log(LogLevel.Warning, passwordResetLink); string emailHtmlBody = "<!DOCTYPE html>" + "<html>" + "<head>" + "<title></title>" + "</head>" + "<body>" + "Clique no link para redefinir sua senha:" + "<br/>" + "<a href='" + passwordResetLink.ToString() + "'>Redefinir senha</a>" + "</body>" + "</html>"; SendEmail.Send(model.Email, "BlogAspNet - Redefinir senha", emailHtmlBody); return(View("ForgotPasswordConfirmation")); } ViewBag.Message = "Usuário não cadastrado ou email do usuário não foi confirmado!"; return(View()); } return(View(model)); }