Enviar Email com C# ASP.NET
Autor: Natanael Santos | Publicado: 2013-03-23T21:09:00-03:00


Olá Pessoal, segue um bom código para envio de email usando ASP.NET C#, mas antes dizer vamos saber algumas curiosidades sobre o email.





1.
Qual foi a primeira mensagem de E-mail?



Ray
Tomlinson é conhecido como a primeira pessoa a enviar uma mensagem
via correio eletrônico.

Tomlinson
não foi especificamente encarregado de desenvolver o e-mail, mas ele
trabalhava em aplicações úteis para o projeto do MIT ARPANET (que
mais tarde evoluiu para a Internet). Ele se dedicou a criar o e-mail
porque para ele parecia ser uma idéia perfeita.

O
primeiro e-mail foi enviado entre dois computadores lado a lado.
Tomlinson diz que não consegue lembrar o conteúdo da primeira
mensagem, mas é provável que tenha sido um “teste 123″ ou algo
assim.



2.
Qual a origem da palavra Spam?




Não
é certo, mas o primeiro spam teria sido enviado em 5 de março de
1994 pelos advogados Canter e Siegel. Eles o fizeram propaganda sobre
uma loteria em um grupo de discussão que não tinha nada a ver com o
assunto, o que revoltou muitos assinantes do grupo.

Já
a palavra Spam é complicado. Existe um presunto enlatado nos Estados
Unidos de nome SPAM® escrito em letras maiúsculas com marca
registrada pela Hormel Foods desde 1930. A empresa aliás não gosta
nada de ter seu produto associado a algo nocivo e indesejável como
os Spams de internet.

Mas
a referência ao produto é inevitável pois a origem mais aceita vem
de uma cena do programa de TV “Monty Python”, onde alguns vikings
muito inconvenientes repetiram infinitas vezes a palavra “spam”,
em referência justamente ao enlatado norte-americano.



3.
Qual é a mais comum e-mail a senha?




Por
incrível que pareça, “123456″ é a líder. Quando 10 mil senhas
do Hotmail vazaram, a combinação “123456″, também liderou a
lista da mais comum. Portanto, não poupe criatividade na hora de
escolher sua senha. Apele para músicas e livros preferidos e faça
uma combinação de letras e números para proteger suas informações.



4.
Como se escreve e-mail?




Pode
ser e-mail, email, E-Mail, E-mail ou eMail. Depende de onde você for
consultar. Muitos dicionários preferem “email”, sem o hífen. Já
a Associated Press Stylebook (Manual de Redação e Guia sobre o
Direito de Mídia da Associated Press) insiste em ver a palavra como
uma abreviatura de “correio eletrônico” e, portanto, com hífen
“e-mail”. Esta, a meu ver é a mais correta.



5.
Como é chamado o sinal @?




Em
português dizemos “arroba”, já na versão em inglês, o “@”
é conhecido apenas como “at”. Conheça mais algumas:

E
em italiano, é “chiocciolina”; em livre tradução: pequeno
caracol.

Em
holandês é “apestaart”; em livre tradução: “rabo de
macaco”.

Em
sueco, “snabel-a”; em livre tradução: tromba de elefante.



6.
Quando foi enviado o primeiro e-mail do espaço?




A
primeira mensagem de correio-eletrônico vinda do espaço foi enviada
em 1991 pela tripulação da STS-43 Atlantis, através do software
AppleLink em um computador Macintosh.




Bom, segue o código abaixo:



private void EnviarEmail(string assunto, string corpoEmail)
{
    //Define os dados do e-mail
    string nomeRemetente = "Meu Nome";
    string emailRemetente = "meu email";
    string senha = "minha senha para acessar meu email";
&nbsp;
    //Host da porta SMTP
    //Exemplo smtp.gmail.com
    string SMTP = "host do servidor do email"; 
&nbsp;
    string emailDestinatario = "Email que será enviado";
    //string emailComCopia        = "email@comcopia.com.br";
    //string emailComCopiaOculta  = "email@comcopiaoculta.com.br";
&nbsp;
    string assuntoMensagem = assunto;
    string conteudoMensagem = corpoEmail;
&nbsp;
    //Cria objeto com dados do e-mail.
    System.Net.Mail.MailMessage objEmail = new System.Net.Mail.MailMessage();
&nbsp;
    //Define o Campo From e ReplyTo do e-mail.
    objEmail.From = new MailAddress(nomeRemetente + "&lt;" + emailRemetente + "&gt;");
&nbsp;
    //Define os destinatários do e-mail.
    objEmail.To.Add(emailDestinatario);
&nbsp;
    //Enviar cópia para.
    //objEmail.CC.Add(emailComCopia);
&nbsp;
    //Enviar cópia oculta para.
    //objEmail.Bcc.Add(emailComCopiaOculta);
&nbsp;
    //Define a prioridade do e-mail.
    objEmail.Priority = System.Net.Mail.MailPriority.Normal;
&nbsp;
    //Define o formato do e-mail HTML (caso não queira HTML alocar valor false)
    objEmail.IsBodyHtml = true;
&nbsp;
    //Define título do e-mail.
    objEmail.Subject = assuntoMensagem;
    
    //Define o corpo do e-mail.
    objEmail.Body = conteudoMensagem;
&nbsp;
&nbsp;
    //Para evitar problemas de caracteres "estranhos", configuramos o charset para "ISO-8859-1"
    objEmail.SubjectEncoding = System.Text.Encoding.GetEncoding("ISO-8859-1");
    objEmail.BodyEncoding = System.Text.Encoding.GetEncoding("ISO-8859-1");
&nbsp;
&nbsp;
    // Caso queira enviar um arquivo anexo
    //Caminho do arquivo a ser enviado como anexo
    //string arquivo = Server.MapPath("arquivo.jpg");
&nbsp;
    // Ou especifique o caminho manualmente
    //string arquivo = @"e:\home\LoginFTP\Web\arquivo.jpg";
&nbsp;
    // Cria o anexo para o e-mail
    //Attachment anexo = new Attachment(arquivo, 
    //System.Net.Mime.MediaTypeNames.Application.Octet);
&nbsp;
    // Anexa o arquivo a mensagem
    //objEmail.Attachments.Add(anexo);
&nbsp;
    //Cria objeto com os dados do SMTP
    System.Net.Mail.SmtpClient objSmtp = new System.Net.Mail.SmtpClient();
&nbsp;
    //Alocamos o endereço do host para enviar os e-mails  
    objSmtp.Credentials = new System.Net.NetworkCredential(emailRemetente, senha);
    objSmtp.Host = SMTP;
    objSmtp.Port = 587;
    //Caso utilize conta de email do exchange deve habilitar o SSL
    //objEmail.EnableSsl = true;
&nbsp;
    //Enviamos o e-mail através do método .send()
    try
    {
        objSmtp.Send(objEmail);
    }
    catch (Exception ex)
    {
        throw ex;
    }
    finally
    {
        //excluímos o objeto de e-mail da memória
        objEmail.Dispose();
        //anexo.Dispose();
    }
}