Como criar um formulário de contato em ASP.NET

Exemplo de formulário de contato em ASP.NET

No exemplo desta página, trataremos a configuração de um formulário de contato em ASP.NET para envio autenticado. O script abaixo possui apenas o código básico para funcionamento, caso desejar adequar ao template do seu site, precisará de conhecimento em HTML e CSS.

Para que o formmail funcione, você precisa alterar os seguintes itens em sua configuração:

Linha 6: msg.From – Nesta linha você deve inserir uma conta de email ativa do seu próprio domínio;
Linha 7: msg.To – E-mail destinatário, que receberá a mensagem;
Linha 8: msg.Cc – Nesta linha você pode configurar o envio Com Cópia para outro e-mail (opcional);
Linha 9: msg.Bcc – Nesta linha você pode configurar o envio Com Cópia Oculta para outro e-mail (opcional);
Linha 17: msg.Fields.Add – Nesta linha deve ser informado um e-mail válido de seu domínio, que será utilizado para a autenticação;
Linha 18: msg.Fields.Add – Nesta linha, informe a senha da conta configurada na linha 17;
Linha 22: SmtpMail.SmtpServer – Protocolo de envio, utilize seu domínio. Caso hospede conosco, use smtp.emailarray.com

<%@ Import Namespace="System.Web.Mail" %>
<script language="VB" runat="server">
 
Sub Page_Load(Sender As Object, E As EventArgs)
Dim msg as New MailMessage()
msg.From = "email@seudominio" 'Remetente: deve ser uma conta válida de seu domínio.'
msg.To = "email@seudominio" 'Destinatário; pode ser enviado para qualquer e-mail.'
'msg.Cc = "email@seudominio" 'Envio "Com Cópia" (Opcional).
'msg.Bcc = "email@seudominio" 'Envio "Com Cópia Oculta" (Opcional).
msg.Subject = "Assunto do email"
 
msg.BodyFormat = MailFormat.Text 'Formato da mensagem: texto. Para envio da mensagem em formato HTML, altere Text para Html.'
msg.Body = "Enviando e-mail de teste." 'Corpo do e-mail.'
 
msg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserverport", 587)
msg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", "email@seudominio") 'Conta de e-mail utilizada para efetuar a autenticação. Deve ser uma conta válida de seu domínio.'
msg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", "SENHA") 'Senha da conta.'
msg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusing", 2)
msg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1")
 
SmtpMail.SmtpServer = "smtp.seudominio" 'Protocolo de envio. Caso hospede conosco, use smtp.emailarray.com
SmtpMail.Send(msg)
msg = Nothing
lblMsg.Text = "E-mail enviado com sucesso!"
End Sub
</script>
<form runat=server>
<asp:Label id=lblMsg runat=Server />
</form>