So senden Sie ein Word-Dokument per E-Mail mit C#

In diesem einfachen Tutorial lernen wir, wie man Word Document per E-Mail mit C# sendet**. Im folgenden Beispiel sehen Sie, wie einfach es ist, mit C# ein Word-Dokument im E-Mail-Text zu senden. Sie können das Beispiel in jedem gängigen Betriebssystem wie Linux, macOS oder Windows verwenden.

Schritte zum Senden von Word-Dokumenten per E-Mail mit C#

  1. Installieren Sie die Bibliotheken Aspose.Words und Aspose.Email aus dem NuGet-Paket-Manager-Tool in Visual Studio.
  2. Initialisieren Sie das Klassenobjekt Document, um das als E-Mail zu versendende Dokument zu laden
  3. Speichern Sie das Dokument als Stream in einem MHTML-Zwischenformat
  4. Instanziieren Sie die MailMessage-Klasseninstanz, um die MHTML als MailMessage zu laden und ihre Eigenschaften festzulegen
  5. Instanziieren Sie den SMTP-Client und senden Sie das Word-Dokument als E-Mail mit C#

In den obigen Schritten laden wir im ersten Schritt das Word-Dokument zum Versenden als E-Mail. Dann speichern wir das geladene Dokument in einem Stream im Zwischenformat MHTML. In den nachfolgenden Schritten laden wir MHTML mithilfe der MailMessage-Klasse und legen seine E-Mail-Eigenschaften fest. Schließlich wird eine Instanz der Client-Klasse SMTP instanziiert, um E-Mails aus DOCX in C# zu erstellen.

Code zum Senden von Word-Dokumenten per E-Mail mit C#

using System;
using System.IO;
using Aspose.Email;
using Aspose.Email.Clients;
using Aspose.Email.Clients.Smtp;
using Aspose.Words;
namespace WordKB
{
class WordsEmail
{
static void Main(string[] args)
{
// Use Aspose.Words and Aspose.Email licenses to remove evaluation version limitations
Aspose.Words.License LicenseForWord = new Aspose.Words.License();
LicenseForWord.SetLicense("Aspose.Total.API.lic");
Aspose.Email.License LicenseForEmail = new Aspose.Email.License();
LicenseForEmail.SetLicense("Aspose.Total.API.lic");
// Load the document for sending as email using Document class
Document EmaiDocument = new Document("EmailDocument.docx");
// Convert the document to MHTML format by using memory stream
Stream EmailStream = new MemoryStream();
EmaiDocument.Save(EmailStream, SaveFormat.Mhtml);
// Now, reset the EmailStream position to the beginning
EmailStream.Position = 0;
// Create an Aspose.Email message from the saved stream
Aspose.Email.MailMessage EmailMessage =
Aspose.Email.MailMessage.Load(EmailStream, new MhtmlLoadOptions());
// Set properties of email to send
EmailMessage.From = "your_from_email@email.com";
EmailMessage.To = "your_to_email@email.com";
EmailMessage.Subject = "Test Message using Aspose. Words and Aspose.Email APIs";
// Initialize SMTP client and it's properties to send email
SmtpClient SMTPClient = new SmtpClient();
SMTPClient.Host = "smtp.gmail.com";
SMTPClient.Username = "YourEmail@gmail.com";
SMTPClient.Password = "Your Gamil Password";
SMTPClient.Port = 587;
SMTPClient.SecurityOptions = SecurityOptions.SSLExplicit;
// Send word email message
SMTPClient.Send(EmailMessage);
}
}
}

Im obigen Beispiel haben wir Word-Dokument im E-Mail-Text mit C# gesendet, indem wir einen zweistufigen Ansatz gewählt haben. Im ersten Schritt haben wir das DOCX als MHTML-Datei im Zwischenformat mithilfe von Streams geladen und gespeichert. Dann haben wir im zweiten Schritt das MHTML im Stream mit MailMessage geladen. Schließlich senden wir mit SMTP-Client Dokumente per E-Mail in C#*.

In diesem einfachen Thema haben wir untersucht, wie Sie E-Mails aus DOCX mit C# erstellen. Wenn Sie jedoch nach einer Konvertierung von DOCX- in MD-Dateien suchen, lesen Sie den Artikel zu wie man Word mit C# in Markdown umwandelt.

 Deutsch