Este es un breve ejemplo de como enviar correo electrónico desde ASP.NET utilizando el servicio SMTP de Gmail. Esta por demás decir que se debe tener una cuenta de Gmail para poder hacer uso de su servicio.
Esto es tan sencillo como abrir el Visual Studio (en mi caso VS2010) y crear un nuevo sitio web. Al formulario por default agregar los siguientes controles:
Una Etiqueta y como texto “Email Destino”
Un cuadro de texto con ID txtEmailDestino
Una Etiqueta con ID lblMensaje y Texto vacio
Un Boton con ID btnEnviar y Texto “Enviar Correo”
En la parte del código de servidor en el evento Click del botón debería quedar como sigue:
string sHtml = "";
string sEmailDestino = "";
//Cadena con etiquetas HTML
sHtml = "<html><h1>Utilizando SMTP Gmail desde ASP.NET</h1><body>" +
" <br/> " +
"Ejemplo simple para el envio de correo HTML " +
"Por: <a href='http://brialogs.com'" + ">Brialogs</a>";
sEmailDestino = txtEmailDestino.Text;
System.Net.Mail.MailMessage mmMensaje = new System.Net.Mail.MailMessage();
//Email destino
mmMensaje.To.Add(sEmailDestino);
//Email Origen, Nombre, Codificación
mmMensaje.From = new MailAddress("tucorreo@gmail", "Email desde ASP.NET", System.Text.Encoding.UTF8);
//Asunto
mmMensaje.Subject = "Correo de prueba";
//Establecer codificación UTF8
mmMensaje.SubjectEncoding = System.Text.Encoding.UTF8;
//Establecer el cuerpo del email
mmMensaje.Body = sHtml;
//Establecer la codificación UTF8 del cuerpo del email
mmMensaje.BodyEncoding = System.Text.Encoding.UTF8;
//Habilitar soporte HTML en el correo que se envia
mmMensaje.IsBodyHtml = true;
//Configuración del servicio de correo que se va a utilizar, en este caso el servicio SMTP de Gmail
SmtpClient scCliente = new SmtpClient();
//Especificar la cuenta de email desde la cual sera enviado el mensaje, la contraseña de la cuenta origen
scCliente.Credentials = new System.Net.NetworkCredential("[email protected]", "tucontrasena");
//Puerto para la comunicación
scCliente.Port = 587;
//Servicio SMTP
scCliente.Host = "smtp.gmail.com";
//Habilitar SSL, es requisito por parte de Gmail
scCliente.EnableSsl = true;
try
{
scCliente.Send(mmMensaje);
lblMensaje.Text = "Email enviado.";
}
catch (System.Net.Mail.SmtpException ex)
{
lblMensaje.Text = ex.Message;
}
Descarga el código fuente

