Enviar correos con C# .NET y Gmail


El dia de hoy vamos a ver como enviar correos con C# .NET y Gmail.

Para enviar correos vamos a usar los siguientes entornos System.Net y System.Net.Mail.

using System.Net;
using System.Net.Mail;

Configurar Gmail / Cuenta de Google

ES necesario una cuenta de gmail, el correo y la contraseña de la que se usara para enviar los correos.

Es muy importante ir a la cuenta de Gmail que enviara correos y en configuración de la cuenta > Seguridad > habilitar el Acceso de aplicaciones poco seguras.

Codigo

Ahora si, vamos con el código, esta dividido en 2 partes, en la primera parte configuramos la conexión al servidor y en la parte 2 configuramos el envió del correo.

En la parte 1, creamos un SmtpClient, le asignamos el Host de Gmail, el puerto 587, activamos el SSL, desactivamos el uso de credenciales default y agregamos el EMAIL y PASSWORD de la cuenta de Gmail para enviar correos.

            // Parte 1
            SmtpClient smtp = new SmtpClient();
            smtp.Host = "smtp.gmail.com";
            smtp.Port = 587; 
            smtp.EnableSsl = true;
            smtp.UseDefaultCredentials = false;
            smtp.Credentials = new NetworkCredential("EMAIL", "PASSWORD");
            // Parte 2
            MailMessage mm = new MailMessage();
            mm.IsBodyHtml = true;
            mm.Priority = MailPriority.Normal;
            mm.From = new MailAddress("softreligion@gmail.com");
            mm.Subject = "Asunto 1";
            mm.Body = "<h1>Hola mundo</h1>";
            mm.Body += "<p>Este es un mensaje de prueba</p>";
            mm.To.Add(new MailAddress("evilnapsis@gmail.com"));
            smtp.Send(mm); // Enviar el mensaje

En la parte 2, creamos un MailMessage, activamos el isBodyHTML, la Prioridad Normal, le agregamos el From que es quien envía el mensaje, el Subject es el asunto, el Body lo colocamos en 2 linea concatenadas y usamos codigo HTML.

Para agregar destinatarios usamos mm.To.Add(new MailAddress(“EMAILX”)) aqui podemos agregar tantos destinatarios como necesitemos.

Por ultimo enviamos el email usando smtp.Send(mm).

Si todo sale Bien se enviara el correo.

Leave a comment