O envio de e-mail é feito por intermédio do - SMTP - (Simple Mail Transfer Protocol) , porta 25 . Você pode configurar o serviço SMTP no seu IIS - Internet Information Server - , ou se desejar , pode usar um componente de terceiros ; dê uma olhada no link - https://www.infoq.com/research/dotnet-web-components |
Pode usar também o componente CDONTs (Collaboration Data Objects for WIndows NT Server) ou um servidor SMTP válido.
Para enviar emails no ASP.NET você tem que importar a classe que contém os métodos e propriedades que fazem este serviço. Estou falando da classe : System.Web.Mail
Depois é só você configurar os métodos e propriedades do objeto que você vai instanciar a partir da classe. As principais são :
Métodos/Propriedades | Descrição |
Body | Corpo do e-mail |
BodyFormat | formato do e-mail |
Cc | Enviar uma cópia para |
Attachments | Anexar arquivos |
From | origem do e-mail |
Subject | Assunto |
To | destino do e-mail |
Priority | nível de prioridade |
SMTPServer | o dominio do servidor SMTP usado |
Vou mostrar primeiro um exemplo básico e padrão : um formulário que depois de preenchido envia um email para o endereço informado. O aspecto do formulário deverá ser o seguinte:
O código do formulário acima é o seguinte :
<%@ Page Language="vb"
AutoEventWireup="false"%> <%@Import NameSpace="System.Web.Mail" %> <script runat="server"> Sub EnviaEmail(Source as Object, E as EventArgs) Dim sMsg as String sMsg+="Aqui esta a informação que foi informada no formulário." & vbcrlf sMsg+="Nome : " & txtNome.Text & vbcrlf sMsg+="Endereco : " & txtEndereco.Text & vbcrlf Dim objEmail as New MailMessage objEmail.To=txtEmail.text SmtpMail.Send(objEmail) |
Neste exemplo eu estou enviando apenas um email sem anexos , sendo que a mensagem já esta criada. Poderia ter incluído uma caixa de texto que permitisse ao usuário digitar a mensagem.
Eu estou usando o controle de validação - RequiredFieldValidator - que obriga o preenchimento de todos os campos do formulário.
Para maiores detalhes sobre o assunto leia o artigo : Trabalhando com Controles e Web Forms - II.
Eu estou usando o serviço do meu servidor SMTP , na linha de código : SmtpMail.SmtpServer ="smtp2.seuservidor.com.br" , você deve alterar para o nome do seu servidor.
Nota: A classe System.Web.Mail não suporta autenticação segura do servidor SMTP. Portanto se o seu servidor SMTP requerer autenticação o exemplo acima não vai funcionar. Você vai ter que usar um componente de terceiros.( Veja o site www.aspemail.com)
Em outro artigo veremos como enviar anexos com email no ASP.NET, até lá....
Veja os
Destaques e novidades do SUPER DVD Visual Basic (sempre atualizado) : clique
e confira !
Quer migrar para o VB .NET ?
Quer aprender C# ??
Quer aprender os conceitos da Programação Orientada a objetos ? Quer aprender o gerar relatórios com o ReportViewer no VS 2013 ? Quer aprender a criar aplicações Web Dinâmicas usando a ASP .NET MVC 5 ? |
Gostou ?
Compartilhe no Facebook
Compartilhe no Twitter
Referências: