Integrando o MailKit com o Serviço Email Delivery
Use MailKit para enviar e-mails por meio do serviço Email Delivery.
Configurar o MailKit para enviar e-mails por meio do serviço Email Delivery
MailKit é um framework de email multiplataforma de código aberto para aplicações .NET. Como SmtpClient não é mais uma abordagem sugerida para enviar e-mails em aplicativos .NET, você pode usar MailKit para enviar e receber e-mails por meio do Email Delivery. Antes de usar o MailKit, configure um código MailKit de amostra e teste-o com a configuração do serviço Email Delivery.
As instruções a seguir contêm um código de amostra para sua conveniência e devem ser usadas como referência.
Para configurar o código de amostra MailKit e testar a configuração do Email Delivery:
-
Certifique-se de que o serviço Email Delivery esteja configurado para enviar e-mails. Consulte Conceitos Básicos.
Observação
As credenciais SMTP são obrigatórias para configurar MailKit para usar o serviço Email Delivery. Não esqueça de anotar o nome de usuário e a senha ao gerar as credenciais SMTP.
-
Para criar um projeto no Visual Studio Code:
- Crie um espaço de projeto criando uma pasta com o nome OCIEmail.
- Abra a pasta OCIEmail em Arquivo de Código VS > Abrir Pasta.
- Abra a janela do terminal (ctrl + ~).
- Para criar o modelo de projeto e adicionar a dependência de MailKit, execute os comandos a seguir no terminal.
dotnet new console --framework net6.0 dotnet add package MailKit --version 2.15.0
Expanda seu projeto na janela do VS Code Explorer.
- Substitua o conteúdo do arquivo Program.cs pelo seguinte bloco de código:
using System; using MailKit.Net.Smtp; using MailKit; using MimeKit; namespace Program { class TestOCIEmail { public static void Main (string[] args) { var message = new MimeMessage (); message.From.Add (new MailboxAddress ("<FROM NAME>", "<FROM>")); message.To.Add (new MailboxAddress ("<TO NAME>", "<TO>")); message.Subject = "Mail from OCI ED service"; message.Body = new TextPart ("Html") { Text = @" <h1>OCI Email Delivery test</h1> <p>This email was sent with OCI Email Delivery using the <a href='https://github.com/jstedfast/MailKit'>MailKit Package</a> for .Net .</p>" }; using (var client = new SmtpClient ()) { var host = "<HOST>"; var port = 587; var username = "<smtp username>"; var password = "<smtp password>"; client.Connect (host, port, false); client.Authenticate (username, password); client.Send (message); client.Disconnect (true); } Console.WriteLine("Email send successfully !!"); } } }
-
Substitua os seguintes parâmetros pelos seus próprios valores no arquivo Program.cs:
- FROM - Substitua pelo endereço de e-mail do remetente. Certifique-se de que esse endereço de e-mail seja adicionado à lista de remetentes aprovados no Email Delivery.
- TO - Substitua pelo endereço de e-mail do destinatário.
- Credenciais SMTP - Substitua smtp_username e smtp_password pelo seu nome de usuário e senha SMTP do Oracle Cloud Infrastructure gerados na console.
- HOST - Substitua pelo ponto final SMTP do serviço Email Delivery. Por exemplo, smtp.us-ashburn-1.oraclecloud.com.
- Salve as alterações e execute o seguinte comando para enviar o e-mail:
dotnet run
- Verifique a saída. Se o e-mail for enviado com sucesso, a console exibirá Email sent successfully! Caso contrário, ela exibirá uma mensagem de erro.
- Faça log-in na caixa de entrada do destinatário para verificar o recebimento do e-mail.