Desenvolvimento - ASP. NET
Enviando e-mail com ASP.NET
Muitas vezes precisamos que nosso site envie e-mails para alguem assim que uma ação é realizada. Devido a esta necessidade estarei mostrando neste artigo como enviar um e-mail atrávés do ASP.NET.
por Ícaro C. BombonatoMuitas vezes precisamos que nosso site envie e-mails para alguém assim que uma ação é realizada. Devido a esta necessidade estarei mostrando neste artigo como enviar um e-mail atrávés do ASP.NET. Vamos criar uma rotina, onde após passados os paramêtros básicos de um e-mail, o mesmo é gerado e enviado.
Primeiro precisamos importar o namespace necessário para enviarmos o e-mail:
Imports System.Web.Mail
Agora vamos criar nossa rotina:
Public Sub spuGerarEmail(ByVal strDe As String, ByVal strPara As String, ByVal strAssunto As String, ByVal strMensagem As String, ByVal enumFormato As MailFormat, ByVal strSMTP As String, ByVal enumPrioridade As MailPriority, Optional ByVal strCaminhoAnexo() As String = Nothing) "Utilizamos o bloco try, catch para tratar eventuais erros Try "Instanciamos uma nova mensagem de e-mail Dim oMail As New MailMessage "Vamos acrescentar os paramêtros necessarios agora "Para quem é o email - strPara "Ex: icaro@codificando.net "Para passar o nome da pessoa, coloque o nome dela seguido do email entre parenteses "Ex: Icaro Bombonato(icaro@codificando.net) oMail.To = strPara "Quem envia o e-mail - strDe "Seguir exemplo do campo "Para" oMail.From = strDe "O assunto da mensagem - strAssunto oMail.Subject = strAssunto "A mensagem em si, pode ser texto ou html - strMensagem oMail.Body = strMensagem "O tipo da mensagem: Texto ou Html - enumFormato oMail.BodyFormat = enumFormato "Prioridade da mensagem: Low, Normal ou High - enumPrioridade oMail.Priority = enumPrioridade "Agora verificamos se a mensagem possui anexos - strAnexos "Para anexar arquivos, passe um array contendo os caminhos dos arquivos a serem anexados "Notem que este parametro é opcional If Not IsNothing(strCaminhoAnexo) Then "Adicionamos os anexos 1 à 1 Dim strAnexo As String For Each strAnexo In strCaminhoAnexo Dim mailAnexo As New MailAttachment(strAnexo) oMail.Attachments.Add(mailAnexo) Next End If "Agora definimos o servidor smpt a ser utilizado, verifique isso "com o provedor onde seu site está hospedado - strSMTP "Geralmente é smtp.provedor.com.br SmtpMail.SmtpServer = strSMTP "Enfim, enviamos o e-mail SmtpMail.Send(oMail) Catch ex As Exception "Caso ocorra algum erro, exibimos o mesmo na tela. "Se quiser, você pode trata-lo da forma que achar melhor. Err.Raise(Err.Number, Err.Source, ex.Message) End Try End Sub
Agora que criamos a função, podemos chama-la no click de um botao, dentro de um sub ou outra parte do codigo.
Ex:
"Criamos um array com os anexos desejados Dim strAnexos(2) As String strAnexos(0) = "D:\temp\arquivo1.txt" strAnexos(1) = "D:\temp\arquivo2.txt" strAnexos(2) = "D:\temp\arquivo3.txt" "Crio uma variavel para o texto Dim strMensagem As String = "Isso é uma mensagem de teste. " _ "Você pode deixar o conteudo em html ou texto simples." "Agora chamamos a funcao e passamos os parametros necessários spuGerarEmail("Seu email(seuemail@provedor.com.br)", _ "Para alguem(paraalguem@provedor.com.br)", "Exemplo de e-mail", strMensagem, _ MailFormat.Text, "smtp.seuprovedor.com.br", MailPriority.Normal, strAnexos)
Este foi apenas um dos modos que você pode enviar email, você pode envia-los tambem através de formularios ou de outro modo que você precise.
Espero que tenham gostado. Qualquer sugestão é só enviar para icaro@codificando.net
Até mais,
Ícaro Bombonato