Як надіслати документ Word електронною поштою за допомогою C#

У цьому легкому посібнику ми навчимося надсилати Word Document електронною поштою за допомогою C#. У наступному прикладі ви побачите, як легко надіслати документ Word у тілі електронної пошти за допомогою C#. Ви можете використовувати приклад у будь-якій загальнодоступній операційній системі, як-от Linux, macOS або Windows.

Кроки для надсилання документа Word електронною поштою за допомогою C#

  1. Установіть бібліотеки Aspose.Words і Aspose.Email із інструмента керування пакетами NuGet у Visual Studio.
  2. Ініціалізуйте об’єкт класу Document, щоб завантажити документ для надсилання електронною поштою
  3. Збережіть документ як потік у проміжному форматі MHTML
  4. Створіть екземпляр класу MailMessage, щоб завантажити MHTML як MailMessage і встановити його властивості
  5. Створіть екземпляр клієнта SMTP і надішліть документ Word електронною поштою за допомогою C#

У наведених вище кроках ми завантажимо документ Word для надсилання електронною поштою на першому кроці. Потім ми збережемо завантажений документ у потік у проміжному форматі MHTML. На наступних кроках ми завантажимо MHTML за допомогою класу MailMessage і налаштуємо його властивості пошти. Нарешті, екземпляр клієнтського класу SMTP буде створено для створення електронної пошти з DOCX на C#.

Код для надсилання документа Word електронною поштою за допомогою 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);
}
}
}

У наведеному вище прикладі ми надіслали документ Word у тілі електронної пошти за допомогою C#, застосувавши двоетапний підхід. На першому кроці ми завантажили та зберегли DOCX як файл MHTML проміжного формату за допомогою потоків. Потім на другому кроці ми завантажили MHTML у потік за допомогою MailMessage. Нарешті, використовуючи клієнт SMTP, ми надсилаємо документ електронною поштою на C#.

У цій простій темі ми дослідили, як створити електронну пошту з DOCX за допомогою C#. Однак, якщо ви шукаєте конвертацію DOCX у файл MD, зверніться до статті як конвертувати Word у Markdown за допомогою C#.

 Українська