Abaixo, um exemplo em C# (.NET) de envio de e-mail:
System.Net.Mail.MailMessage mailMessage = new System.Net.Mail.MailMessage();
mailMessage.From = new System.Net.Mail.MailAddress("remetente@email.com");
mailMessage.To.Add(new System.Net.Mail.MailAddress("destinatario@email.com"));
//Cópia:
//mailMessage.CC.Add(new System.Net.Mail.MailAddress("copia@email.com"));
//Cópia oculta:
//mailMessage.Bcc.Add(new System.Net.Mail.MailAddress("copia.oculta@email.com"));
mailMessage.Subject = "Título do e-mail";
mailMessage.Body = "Olá, esse é o conteúdo do e-mail";
mailMessage.IsBodyHtml = false;
using (var smtp = new System.Net.Mail.SmtpClient())
{
smtp.Host = "smtp.gmail.com";
smtp.Port = 587;
smtp.EnableSsl = true;
smtp.Credentials = new System.Net.NetworkCredential("remetente@email.com", "senha");
//Exemplo de anexo de texto:
//mailMessage.Attachments.Add(new System.Net.Mail.Attachment(
// new MemoryStream(Encoding.UTF8.GetBytes("conteudo do arquivo")),
// "anexo.txt", System.Net.Mime.MediaTypeNames.Text.Plain));
smtp.Send(mailMessage);
}
Baixe o exemplo do GitHub: https://github.com/educoutinho/send-email-example
Se você receber o seguinte erro:
System.Net.Mail.SmtpException was unhandled by user code
HResult=-2146233088
Message=The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.5.1 Authentication Required. Learn more at
Source=System
StackTrace:
at System.Net.Mail.MailCommand.CheckResponse(SmtpStatusCode statusCode, String response)
at System.Net.Mail.MailCommand.Send(SmtpConnection conn, Byte[] command, MailAddress from, Boolean allowUnicode)
at System.Net.Mail.SmtpTransport.SendMail(MailAddress sender, MailAddressCollection recipients, String deliveryNotify, Boolean allowUnicode, SmtpFailedRecipientException& exception)
at System.Net.Mail.SmtpClient.Send(MailMessage message)
Tente o seguinte:
É possível enviar e-mail pelo Amazon SES sem precisar utilizar a API da Amazon, diretamente pelo SMTP.
Para habilitar o envio de e-mail pelo SES, faça o seguinte:
Para enviar e-mail pelo SES você precisará criar um usuário novo na Amazon, faço o seguinte:
{
"Statement": [
{
"Effect": "Allow",
"Action": "ses:SendRawEmail",
"Resource": "*"
}
]
}
Por padrão o SES fica em modo “sandbox”, para ser possivel enviar e-mail para contas externas de e-mail, faça o seguinte:
Para mais informações, consulte: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/request-production-access.html
Na área de configuração do SES no menu “SMTP Settings” são exibidas os dados para envio de e-mail utilizando SES Exemplo:
Utilize essas configurações no código C# acima para envio de e-mail e pronto.