MailKit mit Email Delivery integrieren
Verwenden Sie MailKit, um E-Mails über den Email Delivery-Service zu senden.
MailKit so konfigurieren, dass E-Mails über Email Delivery gesendet werden
MailKit ist ein plattformübergreifendes Open-Source-E-Mail-Framework für .NET-Anwendungen. Da SmtpClient kein Vorschlag mehr ist, E-Mails in .NET-Anwendungen zu senden, können Sie stattdessen MailKit verwenden, um E-Mails über Email Delivery zu senden und zu empfangen. Bevor Sie MailKit verwenden, richten Sie einen MailKit-Beispielcode ein, und testen Sie ihn mit der Email Delivery-Konfiguration.
Die folgenden Anweisungen enthalten einfachen Beispielcode und müssen als Referenz verwendet werden.
So richten Sie den Beispielcode MailKit ein und testen die Email Delivery-Konfiguration:
-
Stellen Sie sicher, dass Email Delivery zum Senden von E-Mails konfiguriert ist. Siehe Erste Schritte.
Hinweis
Die SMTP-Zugangsdaten sind erforderlich, um MailKit zur Verwendung von Email Delivery zu konfigurieren. Notieren Sie den Benutzernamen und das Kennwort, wenn Sie die SMTP-Zugangsdaten generieren.
-
So erstellen Sie ein Projekt in Visual Studio Code:
- Erstellen Sie einen Projektbereich, indem Sie einen Ordner mit dem Namen OCIEmail erstellen.
- Öffnen Sie den Ordner OCIEmail in VS-Codedatei > Ordner öffnen.
- Öffnen Sie das Terminalfenster (ctrl + ~).
- Um die Projektvorlage zu erstellen und die Abhängigkeit von MailKit hinzuzufügen, führen Sie die folgenden Befehle im Terminal aus.
dotnet new console --framework net6.0 dotnet add package MailKit --version 2.15.0
Erweitern Sie Ihr Projekt im Fenster "VS Code Explorer".
- Ersetzen Sie den Inhalt der Datei Program.cs durch den folgenden Codeblock:
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 !!"); } } }
-
Ersetzen Sie die folgenden Parameter durch Ihre eigenen Werte in der Datei Program.cs:
- VON - Durch Ihre Absender-E-Mail-Adresse ersetzen. Stellen Sie sicher, dass diese E-Mail-Adresse der Liste "Genehmigte Absender" in Email Delivery hinzugefügt wird.
- AN - Durch die Empfänger-E-Mail-Adresse ersetzen.
- SMTP-Zugangsdaten - Ersetzen Sie "smtp_username" und "smtp_password" durch den SMTP-Benutzernamen und das Kennwort für Oracle Cloud Infrastructure, die in der Konsole generiert wurden.
- HOST - Durch den SMTP-Endpunkt für Email Delivery ersetzen. Beispiel: smtp.us-ashburn-1.oraclecloud.com.
- Speichern Sie die Änderungen, und führen Sie den folgenden Befehl aus, um die Mail zu senden:
dotnet run
- Prüfen Sie die Ausgabe. Wenn die E-Mail erfolgreich gesendet wurde, wird in der Konsole E-Mail erfolgreich gesendet! angezeigt. Andernfalls wird eine Fehlermeldung angezeigt.
- Melden Sie sich beim Posteingang des Empfängers an, um den Eingang der E-Mail zu prüfen.