V tomto jednoduchém tutoriálu se naučíme, jak poslat Word Document e-mailem pomocí C#. V následujícím příkladu uvidíte, jak snadné je odeslat dokument Word v těle e-mailu pomocí C#. Příklad můžete použít v jakémkoli běžně dostupném operačním systému, jako je Linux, macOS nebo Windows.
Kroky k odeslání dokumentu Word e-mailem pomocí C#
- Nainstalujte knihovny Aspose.Words a Aspose.Email z nástroje správce balíčků NuGet v sadě Visual Studio.
- Inicializujte objekt třídy Document, aby se načetl dokument k odeslání jako e-mail
- Uložte dokument jako datový proud do středního formátu MHTML
- Vytvořte instanci třídy MailMessage pro načtení MHTML jako MailMessage a nastavení jeho vlastností
- Vytvořte instanci SMTP klienta a odešlete dokument Word jako e-mail pomocí C#
Ve výše uvedených krocích načteme dokument Word pro odeslání jako e-mail v prvním kroku. Poté načtený dokument uložíme do streamu ve středním MHTML formátu. V následujících krocích načteme MHTML pomocí třídy MailMessage a nastavíme vlastnosti pošty. Nakonec bude instance třídy klienta SMTP vytvořena pro vytvoření e-mailu z DOCX v C#.
Kód pro odeslání dokumentu Word e-mailem pomocí 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); | |
} | |
} | |
} |
Ve výše uvedeném příkladu jsme odesílali dokument Word v těle e-mailu pomocí C# pomocí přístupu ve dvou krocích. V prvním kroku jsme načetli a uložili DOCX jako meziformátový soubor MHTML pomocí proudů. Ve druhém kroku jsme načetli MHTML ve streamu pomocí MailMessage. Nakonec pomocí SMTP klienta pošleme dokument e-mailem v C#.
V tomto jednoduchém tématu jsme prozkoumali, jak vytvořit e-mail z DOCX pomocí C#. Pokud však hledáte konverzi DOCX na soubor MD, přečtěte si článek na jak převést Word na Markdown pomocí C#.