در این آموزش آسان، نحوه ارسال Word Document از طریق ایمیل با استفاده از C# را یاد خواهیم گرفت. در مثال زیر خواهید دید که ارسال سند Word در متن ایمیل با استفاده از C# چقدر آسان است. میتوانید از این مثال در هر یک از سیستمعاملهای رایج موجود مانند Linux، macOS یا Windows استفاده کنید.
مراحل ارسال سند Word از طریق ایمیل با استفاده از سی شارپ
- کتابخانه های Aspose.Words و Aspose.Email را از ابزار مدیریت بسته NuGet در ویژوال استودیو نصب کنید.
- شیء کلاس Document را برای بارگیری سند برای ارسال به عنوان ایمیل، مقداردهی کنید
- سند را به عنوان جریان در قالب MHTML متوسط ذخیره کنید
- نمونه کلاس MailMessage را برای بارگیری MHTML بهعنوان MailMessage و تنظیم ویژگیهای آن نمونهسازی کنید.
- کلاینت SMTP را نمونه سازی کنید و سند Word را به عنوان ایمیل با استفاده از C# ارسال کنید.
در مراحل بالا، سند Word را برای ارسال به عنوان ایمیل در مرحله اول بارگذاری می کنیم. سپس سند بارگیری شده را در یک جریان با فرمت متوسط MHTML ذخیره می کنیم. در مراحل بعدی، MHTML را با استفاده از MailMessage class بارگذاری می کنیم و ویژگی های ایمیل آن را تنظیم می کنیم. در نهایت، نمونه ای از کلاس کلاینت 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); | |
} | |
} | |
} |
در مثال بالا، ما ارسال سند ورد در متن ایمیل با استفاده از C# با اتخاذ رویکرد دو مرحله ای داریم. در مرحله اول، ما DOCX را به عنوان یک فایل MHTML با فرمت متوسط با استفاده از استریم ها بارگیری و ذخیره کرده ایم. سپس در مرحله دوم، MHTML را در جریان با استفاده از MailMessage بارگذاری کردیم. در نهایت با استفاده از SMTP client، سند را از طریق ایمیل در C#* ارسال می کنیم.
در این مبحث ساده، نحوه ایجاد ایمیل از DOCX با استفاده از C# را بررسی کرده ایم. اما اگر به دنبال تبدیل فایل DOCX به MD هستید، به مقاله نحوه تبدیل Word به Markdown با استفاده از سی شارپ مراجعه کنید.