public ActionResult EsqueceuSenha(CandidatoEsqueceuSenhaViewModel model) { if (!StringExt.IsNullOrWhiteSpace(model.Cpf, model.Email) && Valida.CPF(model.Cpf) && Valida.Email(model.Email)) { Candidato c = Candidato.ListarPorCPF(Formate.DeCPF(model.Cpf)); if (c != null && c.Email.ToLower() == model.Email.ToLower()) { string token = Candidato.GerarTokenParaAlterarSenha(c); string url = Url.Action("AlterarSenha", "Candidato", new { codigo = token }, Request.Url.Scheme); EnviarEmail.SolicitarSenha(c.Email, c.Nome, url); TempData["EsqueceuSenhaMensagem"] = $"Um email com instruções foi enviado para {c.Email}."; return(RedirectToAction("EsqueceuSenha")); } else { model.Mensagem = "Não foi encontrado nenhum candidato para os dados informados."; } } else { model.Mensagem = "Todos os campos devem serem preenchidos com valores válidos."; } return(View(model)); }