コード例 #1
0
 public bool GuardarEvidenciaCorreo(EvidenciaCorreo EvidenciaCorreo)
 {
     if (EvidenciaCorreo != null)
     {// si el objeto es diferente de nulo
         try
         {
             BD.EvidenciaCorreo.Add(EvidenciaCorreo);
             BD.SaveChanges();
             return(true);
         }
         catch (Exception error)
         {
             Bll_File.EscribirLog(error.ToString());
             return(false);
         }
     }
     else
     {
         return(false);
     }
 }
コード例 #2
0
        // Metodo que arma el Email y lo envia
        public bool EnviarCorreo(string EmailDestino, string Asunto, string Mensaje)
        {
            string EmailRemitente         = ConfigurationManager.AppSettings.Get("EmailRemitente");
            string PasswordEmailRemitente = ConfigurationManager.AppSettings.Get("PasswordEmailRemitente");
            int    PuertoEmail            = int.Parse(ConfigurationManager.AppSettings.Get("EmailPuerto"));
            string EmailHost = ConfigurationManager.AppSettings.Get("EmailHost");

            // para enviar correos electronicos, se debe crear una cuenta de gmail (preferiblemente), iniciar sesion en ella  y luego dirigirse a esta direccion
            //  www.google.com/settings/security/lesssecureapps
            // y darle en la opcion Permitir el acceso de aplicaciones menos seguras: SÍ
            // luego colocar los datos de la cuenta y la clave

            MailMessage mensaje = new System.Net.Mail.MailMessage();

            mensaje.To.Add("*****@*****.**");

            mensaje.To.Add(EmailDestino);
            mensaje.Subject         = Asunto;
            mensaje.SubjectEncoding = System.Text.Encoding.UTF8;
            mensaje.Body            = Mensaje;
            mensaje.BodyEncoding    = System.Text.Encoding.UTF8;
            mensaje.IsBodyHtml      = false;
            mensaje.From            = new MailAddress(EmailRemitente, "Sistema - TESIS", System.Text.Encoding.UTF8);
            mensaje.Priority        = MailPriority.Normal;
            System.Net.Mail.SmtpClient SmtpClient = new System.Net.Mail.SmtpClient();
            SmtpClient.UseDefaultCredentials = false;
            SmtpClient.Credentials           = new System.Net.NetworkCredential(EmailRemitente, PasswordEmailRemitente); // ususario y clave de la cuenta desde la que se envian los msj
            SmtpClient.Port      = PuertoEmail;
            SmtpClient.EnableSsl = true;
            SmtpClient.Host      = EmailHost;

            // se llenan los datos de evidencia de correo
            EvidenciaCorreo EvidenciaCorreo = new EvidenciaCorreo();

            EvidenciaCorreo.Asunto         = Asunto;
            EvidenciaCorreo.EmailDestino   = EmailDestino;
            EvidenciaCorreo.EmailRemitente = EmailRemitente;
            EvidenciaCorreo.Fecha          = UtilitiesCommons.ObtenerHorayFechaActualLocal();
            EvidenciaCorreo.Mensaje        = Mensaje;

            /*-------------------------ENVIO DE CORREO----------------------*/
            try
            {
                //Se envia el mensaje
                SmtpClient.Send(mensaje);
                SmtpClient.Dispose();

                EvidenciaCorreo.EstadoEnvio = "Enviado Exitoso";
                Bll_EvidenciaCorreo.GuardarEvidenciaCorreo(EvidenciaCorreo);


                return(true);
            }
            catch (System.Net.Mail.SmtpException Error)// no puede detener el proceso por lo tanto no se coloca un Throw
            {
                EvidenciaCorreo.EstadoEnvio = "Enviado Fallido";
                Bll_EvidenciaCorreo.GuardarEvidenciaCorreo(EvidenciaCorreo);

                //Bll_File.EscribirLog(Error.ToString());
                return(true);
            }
        }