¿Estas en un proyecto con c# y necesitas enviar correos electrónicos? Hoy te explicaremos paso a paso como enviar correos con c# y Gmail conectándonos desde c# a una cuenta de correo exitente en Gmail de Google, te mostramos codigo fuente mediante un práctico ejemplo.
💼 Empleos tech relacionados:
- Analista de programación y Cadena de suministro · CEMEX
- Becario de Programación · Grupo La Florida México
3,183 vacantes activas en LATAM · ver todas → · ⭐ Opiniones en Google
¿En qué te ayudamos hoy?
🎓 Cursos confirmados con 50% OFF hoyInicia 26 Sep — cupo limitado para lectores del blog:
-
💬 Diplomado .NET Empresarial Desde Cero
· Inicia 26 Sep · sabatino ·
$39,990$19,995 (-50%) MXN -
💬 Visual Studio .NET Desde Cero
· Inicia 26 Sep · sabatino ·
$12,250$6,125 (-50%) MXN -
💬 Consultor AWS Despliegue de Apps
· Inicia 28 Sep · lunes - jueves ·
$8,130$4,065 (-50%) MXN
Por WhatsApp en horario habil · ver todos los cursos → · ⭐ Opiniones en Google
Muchas veces dentro de nuestros proyectos tenemos la necesidad de enviar correos.
Pero, ¿Cómo enviar correos desde una aplicación en c#?
Hace poco te mostramos como exportar la información de un datagridview a excelde manera bastante fácil.
El ejemplo de hoy lo es todavía aún más fácil!
Para hacer las cosas un poco más fácil crearemos una clase llamada EnviarEmail donde realizaremos la configuración básica.
Crearemos un objeto SmtpClient y otro MailMessage, además de variables con información de nuestro usuario, contraseña, servidor y puerto.
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
public class EnviarEmail
{
SmtpClient cliente;
MailMessage mm;
String usuario;
String contraseña;
String servidor;
int puerto;
const String cuerpoHtml1 = «…»;
const String cuerpoHtml2 = «…»;
public EnviarEmail()
{
usuario = «tucuenta@gmail.com»;
contraseña = «password»;
servidor = «smtp.gmail.com»;
puerto = 587;
cliente = new SmtpClient();
cliente.Port = puerto;
cliente.Host = servidor;
cliente.EnableSsl = true;
cliente.Timeout = 10000;
cliente.DeliveryMethod = SmtpDeliveryMethod.Network;
cliente.UseDefaultCredentials = false;
cliente.Credentials = new System.Net.NetworkCredential(usuario, contraseña);
}
public Boolean enviarEmail(String destinatario, String asunto, String mensaje)
{
String cuerpoCompleto = «»;
cuerpoCompleto = cuerpoHtml1 + «<br/><br/><p>» + mensaje + «</p><br/><br/>» + cuerpoHtml2;
mm = new MailMessage(usuario, destinatario, asunto, cuerpoCompleto);
mm.IsBodyHtml = true;
mm.BodyEncoding = UTF8Encoding.UTF8;
mm.DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure;
cliente.Send(mm);
return true;
}
}
|
En el constructor de la clase realizamos algunas configuración básicas y necesarias para conectar a Gmail.
Asegurate de cambiar el usuario y contraseña de la cuenta a la que queremos conectar para enviar el correo.
El servidor y puerto es el indicado para realizar la conexión a Gmail.
Posteriormente mediante la función enviarEmail completamos el correo con el asunto, destinatario y mensaje.
Cabe destacar que estamos enviando un mensaje con formato HTML en codificación UTF8.
Por último enviamos el correo.
Podrás notar que el mensaje lo metemos dentro de dos variables (cuerpoHtml1 y cuerpoHtml2) que yo utilizo para incluir codigo html y darle un formato bonito al correo.
Ahora para hacer uso de esta funcionalidad simplemente en cualquier clase creamos una instancia de nuestra clase, inicializamos y accedemos a la función enviarEmail.
|
1
|
public static EnviarEmail enviarEmail;
|
|
1
2
|
// Inicializamos el objeto de envio de correos
enviarEmail = new EnviarEmail();
|
|
1
|
enviarEmail.enviarEmail(«destinatario», «Asunto», msj);
|
Como puedes ver la funcionalidad de enviar correos con C# y Gmail es bastante fácil de implementar.
💼 Empleos tech relacionados:
- Analista de programación y Cadena de suministro · CEMEX
- Becario de Programación · Grupo La Florida México
3,183 vacantes activas en LATAM · ver todas → · ⭐ Opiniones en Google




