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.

Importante

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:

  1. 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.

  2. Para criar um projeto no Visual Studio Code:

    1. Crie um espaço de projeto criando uma pasta com o nome OCIEmail.
    2. Abra a pasta OCIEmail em Arquivo de Código VS > Abrir Pasta.
    3. Abra a janela do terminal (ctrl + ~).
    4. 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.

  3. 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 !!");
            }
        }
    }
    
  4. Substitua os seguintes parâmetros pelos seus próprios valores no arquivo Program.cs:
    1. 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.
    2. TO - Substitua pelo endereço de e-mail do destinatário.
    3. Credenciais SMTP - Substitua smtp_username e smtp_password pelo seu nome de usuário e senha SMTP do Oracle Cloud Infrastructure gerados na console.
    4. HOST - Substitua pelo ponto final SMTP do serviço Email Delivery. Por exemplo, smtp.us-ashburn-1.oraclecloud.com.
  5. Salve as alterações e execute o seguinte comando para enviar o e-mail:
    dotnet run
  6. 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.
  7. Faça log-in na caixa de entrada do destinatário para verificar o recebimento do e-mail.