コード例 #1
0
        //Envía liga para el cambio de contraseña
        public ActionResult EnviarCambioDeContraseña(FormCollection Formulario)
        {
            string NombreUsuario;

            try
            {
                if (Formulario.Count > 0)
                {
                    NombreUsuario = Formulario[1].ToString();
                    Guid ClaveReset = new Guid();
                    ClaveReset = Guid.NewGuid();


                    string correoelectronico = LogicaUsuarios.L_SolicitarCambioContraseña(NombreUsuario, ClaveReset.ToString());
                    if (correoelectronico != "")
                    {
                        MailMessage email = new MailMessage("*****@*****.**", correoelectronico);
                        email.To.Add(new MailAddress(ConfigurationManager.AppSettings["CorreoAdministrador"].ToString()));
                        email.Subject = "Asunto ( Solicitud de cambio de contraseña " + DateTime.Now.ToString("dd / MMM / yyy hh:mm:ss") + " ) ";

                        //Obtener la plantilla en HTML:

                        string path            = ConfigurationManager.AppSettings["Html_SolicitarCambioContraseña"].ToString();
                        string ContenidoCorreo = System.IO.File.ReadAllText(path);

                        string Enlace = ConfigurationManager.AppSettings["Enlace_SolicitarCambioContraseña"].ToString() + ClaveReset.ToString();
                        ContenidoCorreo = ContenidoCorreo.Replace("#EnlaceReposicionContrasenia#", Enlace);
                        AlternateView htmlView = AlternateView.CreateAlternateViewFromString(ContenidoCorreo, null, "text/html");


                        //Obtener imágenes:

                        LinkedResource Logotipo_SENER = new LinkedResource(ConfigurationManager.AppSettings["Logotipo_SENER"].ToString());
                        Logotipo_SENER.ContentId = "Logotipo_SENER";
                        htmlView.LinkedResources.Add(Logotipo_SENER);

                        LinkedResource Logotipo_MEXICO = new LinkedResource(ConfigurationManager.AppSettings["Logotipo_MEXICO"].ToString());
                        Logotipo_MEXICO.ContentId = "Logotipo_MEXICO";
                        htmlView.LinkedResources.Add(Logotipo_MEXICO);



                        email.AlternateViews.Add(htmlView);
                        email.IsBodyHtml = true;
                        email.Priority   = MailPriority.High;

                        SmtpClient smtp = new SmtpClient();
                        smtp.Host                  = "172.16.70.110";
                        smtp.Port                  = 25;
                        smtp.EnableSsl             = false;
                        smtp.UseDefaultCredentials = false;
                        smtp.Send(email);
                        email.Dispose();
                        TempData["notice"]    = "Se ha enviado un correo con el enlace para el cambio de contraseña.";
                        Session["TipoAlerta"] = "Correcto";
                        return(RedirectToAction("SolicitudCambioDeContraseña", "Home"));
                    }
                    else
                    {
                        TempData["notice"]    = "Los datos registrados para este usuario son incorrectos.";
                        Session["TipoAlerta"] = "Error";
                        return(RedirectToAction("SolicitudCambioDeContraseña", "Home"));
                    }
                }
                else
                {
                    TempData["notice"]    = "El usuario no se encuentra en el sistema.";
                    Session["TipoAlerta"] = "Error";
                    return(RedirectToAction("SolicitudCambioDeContraseña", "Home"));
                }
            }
            catch (Exception ex)
            {
                TempData["notice"]    = ConfigurationManager.AppSettings["MensajeError"].ToString();
                Session["TipoAlerta"] = "Error";
                MetodoGeneral.RegistroDeError(ex.Message, "Home: SolicitudDeContraseña");
                return(RedirectToAction("SolicitudCambioDeContraseña", "Home"));
            }
        }