Enviando e-mail autenticado no C#

Postado por: Tiago Lemos em 20th nov, 2008 | Categoria: ASP.NET, C#

Bom, pode até parecer estranho, mas eu nunca precisei enviar um e-mail com autenticação, isso até hoje.
Me deparei com este simples problema e acho interessante compartilhar com todos como pode ser feito o envio de e-mails em servidores de SMTP que requerem autenticação.
Utilizando a namespace System.Net.Mail ficou muito simples o envio com autenticação. Veja o exemplo abaixo:


//Crie o email
MailMessage mail = new MailMessage();

//Adicione os endereços de e-mail
mail.From = new MailAddress("teste@teste.com.br");
mail.To.Add("teste@teste.com.br");

//Adicione o conteúdo do e-mail
mail.Subject = "Este é o Assunto";
mail.Body = "Este será o corpo do e-mail.";

//Crie o STMP de acordo com suas configurações
SmtpClient smtp = new SmtpClient("localhost");

//Para autenticar, basta setar o usuário e a senha do servidor de SMTP
smtp.Credentials = new NetworkCredential("usuario", "senha");

//Envie o e-mail
smtp.Send(mail);

Bem simples hein! Espero que tenham gostado.
Em breve tem mais.