في هذه المدونة ، ستتعلم كيفية إنشاء رسائل بريد إلكتروني في Outlook (بما في ذلك MSG أو EML أو EMLX أو MHTML) في C#. سنشرح أيضًا كيفية إرسال رسائل البريد الإلكتروني بشكل متزامن أو غير متزامن باستخدام C# في .NET أو .NET Core.

C# إرسال بريد إلكتروني Outlook

أصبح البريد الإلكتروني مصدرًا أساسيًا لتبادل الرسائل ومشاركة المحتوى مثل المستندات أو الصور أو أنواع الملفات الأخرى. يعد تكرار استخدام رسائل البريد الإلكتروني أكثر داخل الأنظمة عبر الإنترنت لمشاركة الإخطارات أو المستندات المهمة مع كيانات متعددة. في مثل هذه الحالات ، قد يكون إعداد قالب وإرسال رسائل بريد إلكتروني إلى العديد من أصحاب المصلحة يدويًا مهمة تستغرق وقتًا طويلاً وتتطلب وقتًا عصيبًا.

هنا تأتي الحاجة إلى خدمة أتمتة البريد الإلكتروني التي يمكنك من خلالها إنشاء وإرسال رسائل البريد الإلكتروني بسلاسة. لذلك في هذه المقالة ، سأعلمك كيفية إنشاء رسائل بريد إلكتروني بتنسيقات Outlook الشائعة وأتمتة عملية إرسال رسائل البريد الإلكتروني برمجيًا. بعد قراءة هذا المقال ، ستتمكن من:

  • إنشاء وحفظ رسالة بريد إلكتروني في C# ،
  • إنشاء بريد إلكتروني باستخدام نص HTML في C# ،
  • إنشاء بريد إلكتروني بترميز معين في C# ،
  • إرسال رسائل البريد الإلكتروني بشكل متزامن باستخدام SMTP في C# ،
  • إرسال رسائل البريد الإلكتروني بشكل غير متزامن باستخدام SMTP في C# ،
  • وإرسال رسائل بريد إلكتروني مجمعة في C#.

C# API لإنشاء وإرسال رسائل البريد الإلكتروني في Outlook

من أجل أتمتة عملية إنشاء وإرسال رسائل البريد الإلكتروني ، سنستخدم Aspose.Email for .NET وهو واجهة برمجة تطبيقات قوية لمعالجة البريد الإلكتروني ومعالجته. يدعم تنسيقات البريد الإلكتروني الشائعة بما في ذلك رسائل MS Outlook مثل MSG و EML / EMLX وما إلى ذلك. يمكنك تنزيل واجهة برمجة التطبيقات DLL مباشرة أو تثبيتها عبر NuGet Package Manager أو Package Manager Console في Visual Studio .

PM> Install-Package Aspose.Email

بعد إنشاء تطبيق C# (وحدة تحكم ، ASP.NET ، إلخ) وتثبيت Aspose.Email لـ .NET ، يمكنك البدء في إنشاء رسائل البريد الإلكتروني وإرسالها في C#.

إنشاء بريد إلكتروني في Outlook في C#

من أجل إنشاء رسائل بريد إلكتروني في Outlook أو معالجتها ، يوفر Aspose.Email فئة MailMessage. تتيح لك هذه الفئة تعيين جميع خصائص رسالة البريد الإلكتروني (الموضوع ، إلى ، من والنص) وإضافة المرفقات وحفظ الرسالة بتنسيقات بريد إلكتروني مختلفة مثل EML و MSG و MHTML وما إلى ذلك. فيما يلي خطوات الإنشاء رسالة بريد إلكتروني:

  • قم بإنشاء مثيل لفئة MailMessage.
  • عيّن خصائص الرسالة.
  • احفظ رسالة البريد الإلكتروني باستخدام طريقة MailMessage.Save().

يوضح نموذج التعليمات البرمجية التالي كيفية إنشاء رسالة بريد إلكتروني وحفظها في C#.

// إنشاء مثيل جديد لفئة MailMessage
MailMessage message = new MailMessage();

// حدد موضوع الرسالة والجسم ومعلومات المرسل
message.Subject = "New message created by Aspose.Email for .NET";
message.Body = "This is the body of the email.";
message.From = new MailAddress("from@domain.com", "Sender Name", false);

// إضافة إلى المستلمين والمستلمين CC
message.To.Add(new MailAddress("to1@domain.com", "Recipient 1", false));
message.CC.Add(new MailAddress("cc1@domain.com", "Recipient 3", false));

// أضف ملحقات
message.Attachments.Add(new Attachment("word.docx"));

// احفظ الرسالة بتنسيقات EML و EMLX و MSG و MHTML
message.Save("EmailMessage.eml", SaveOptions.DefaultEml);
message.Save("EmailMessage.emlx", SaveOptions.CreateSaveOptions(MailMessageSaveType.EmlxFormat));
message.Save("EmailMessage.msg", SaveOptions.DefaultMsgUnicode);
message.Save("EmailMessage.mhtml", SaveOptions.DefaultMhtml);

إنشاء بريد إلكتروني في Outlook باستخدام HTML Body في C#

تُستخدم علامات HTML لجعل نص البريد الإلكتروني أكثر تنظيمًا وقابلية للتقديم وإثراءًا بعناصر مختلفة مثل الجداول والصور والقوائم وما إلى ذلك. في حالة رغبتك في إنشاء بريد إلكتروني به نص HTML ، يمكنك استخدام خاصية MailMessage.HtmlBody. يوضح نموذج التعليمات البرمجية التالي كيفية إنشاء بريد إلكتروني في Outlook باستخدام نص HTML في C#.

// إنشاء مثيل جديد لفئة MailMessage
MailMessage message = new MailMessage();

// تعيين موضوع الرسالة ونص Html ومعلومات المرسل
message.Subject = "New message created by Aspose.Email for .NET";
message.HtmlBody = "<b>This line is in bold.</b> <br/> <br/>" + "<font color=blue>This line is in blue color</font>";
message.From = new MailAddress("from@domain.com", "Sender Name", false);

// إضافة إلى المستلمين والمستلمين CC
message.To.Add(new MailAddress("to1@domain.com", "Recipient 1", false));
message.CC.Add(new MailAddress("cc1@domain.com", "Recipient 3", false));

// احفظ الرسالة بتنسيق EML / EMLX / MSG / MHTML
message.Save("EmailMessage.eml", SaveOptions.DefaultEml);

C# إنشاء بريد إلكتروني في Outlook مع ترميز خاص

يمكنك أيضًا تحديد معيار التشفير الذي تريده لإخبار المتصفح أو تطبيق البريد الإلكتروني بكيفية تفسير الأحرف في نص البريد الإلكتروني. يتم استخدام الخاصية MailMessage.BodyEncoding لهذا الغرض. يوضح نموذج التعليمات البرمجية التالي كيفية تعيين ترميز الجسم عند إنشاء بريد إلكتروني في Outlook باستخدام C#.

// إنشاء مثيل جديد لفئة MailMessage
MailMessage message = new MailMessage();

// تعيين موضوع الرسالة ونص Html ومعلومات المرسل والمتلقي
message.Subject = "New message created by Aspose.Email for .NET";
message.HtmlBody = "<b>This line is in bold.</b> <br/> <br/>" + "<font color=blue>This line is in blue color</font>";
message.From = new MailAddress("from@domain.com", "Sender Name", false);
message.To.Add(new MailAddress("to1@domain.com", "Recipient 1", false));

// حدد الترميز 
message.BodyEncoding = Encoding.ASCII;

// احفظ الرسالة بتنسيق EML / EMLX / MSG / MHTML
message.Save("EmailMessage.msg", SaveOptions.DefaultMsgUnicode);

إرسال رسائل البريد الإلكتروني في Outlook بشكل متزامن أو غير متزامن في C#

الآن ، بمجرد إنشاء رسالة البريد الإلكتروني ، يمكنك إرسالها إلى مستلميها بشكل متزامن أو غير متزامن. تتيح لك فئة SmtpClient إرسال رسائل البريد الإلكتروني في Outlook باستخدام SMTP (بروتوكول نقل البريد البسيط).فيما يلي خطوات إرسال بريد إلكتروني في C# باستخدام Aspose.Email لـ .NET.

  • قم بإنشاء أو تحميل رسالة بريد إلكتروني باستخدام فئة MailMessage.
  • قم بإنشاء مثيل لفئة SmtpClient وقم بتعيين المضيف واسم المستخدم وكلمة المرور ورقم المنفذ.
  • أرسل البريد الإلكتروني بشكل متزامن أو غير متزامن باستخدام طريقة SmtpClient.Send أو SmtpClient.SendAsync على التوالي.

إرسال بريد إلكتروني في Outlook بشكل متزامن في C#

// إنشاء مثيل MailMessage. يمكنك إنشاء رسالة جديدة أو تحميل ملف رسالة تم إنشاؤه بالفعل (eml ، msg ، إلخ.)
MailMessage msg = MailMessage.Load("EmailMessage.msg");

// قم بإنشاء مثيل لفئة SmtpClient
SmtpClient client = new SmtpClient();

// حدد مضيف البريد واسم المستخدم وكلمة المرور والمنفذ رقم وخيار الأمان
client.Host = "mail.server.com";
client.Username = "username";
client.Password = "password";
client.Port = 587;
client.SecurityOptions = SecurityOptions.SSLExplicit;
try
{
	// أرسل هذا البريد الإلكتروني
	client.Send(msg); 
}
catch (Exception ex)
{
	Trace.WriteLine(ex.ToString());
}

إرسال بريد إلكتروني في Outlook بشكل غير متزامن في C#

// إنشاء مثيل MailMessage. يمكنك إنشاء رسالة جديدة أو تحميل ملف رسالة تم إنشاؤه بالفعل (eml ، msg ، إلخ.)
MailMessage msg = MailMessage.Load("EmailMessage.msg");

// قم بإنشاء مثيل لفئة SmtpClient
SmtpClient client = new SmtpClient();

// حدد مضيف البريد واسم المستخدم وكلمة المرور والمنفذ رقم وخيار الأمان
client.Host = "mail.server.com";
client.Username = "username";
client.Password = "password";
client.Port = 587;
client.SecurityOptions = SecurityOptions.SSLExplicit;

// حدد مضيف البريد واسم المستخدم وكلمة المرور والمنفذ رقم وخيار الأمان
client.Host = "mail.server.com";
client.Username = "username";
client.Password = "password";
client.Port = 587;
client.SecurityOptions = SecurityOptions.SSLExplicit; 

// إرسل رسائل
client.SendAsync(msg);

Console.WriteLine("Sending message..."); 

msg.Dispose(); 

إرسال رسائل بريد إلكتروني مجمعة في C#

يمكنك أيضًا إنشاء رسائل بريد إلكتروني وإرسالها بشكل مجمّع. يتم استخدام فئة MailMessageCollection لاحتواء مجموعة رسائل البريد الإلكتروني التي تريد إرسالها. يوضح نموذج التعليمات البرمجية التالي كيفية إرسال رسائل بريد إلكتروني مجمعة في C#.

// قم بإنشاء SmtpClient وحدد الخادم والمنفذ واسم المستخدم وكلمة المرور
SmtpClient client = new SmtpClient("mail.server.com", 25, "Username", "Password");

// إنشاء مثيلات لفئة MailMessage وتحديد To و From و Subject و Message
MailMessage message1 = new MailMessage("msg1@from.com", "msg1@to.com", "Subject1", "message1, how are you?");
MailMessage message2 = new MailMessage("msg1@from.com", "msg2@to.com", "Subject2", "message2, how are you?");
MailMessage message3 = new MailMessage("msg1@from.com", "msg3@to.com", "Subject3", "message3, how are you?");

// قم بإنشاء مثيل MailMessageCollection وأضف رسائل بريد إلكتروني إليه
MailMessageCollection manyMsg = new MailMessageCollection();
manyMsg.Add(message1);
manyMsg.Add(message2);
manyMsg.Add(message3);
 
try
{  
	// إرسل رسائل
	client.Send(manyMsg); 
}
catch (Exception ex)
{
	Trace.WriteLine(ex.ToString());
}

Aspose Email API لـ C# - عروض توضيحية مباشرة

استنتاج

في هذه المقالة ، تعلمت كيفية إنشاء رسائل بريد إلكتروني في Outlook في C#. علاوة على ذلك ، لقد رأيت كيفية إرسال رسائل البريد الإلكتروني بشكل متزامن أو غير متزامن من داخل تطبيقات .NET. يمكنك استكشاف وثائق Aspose.Email لـ .NET لمعرفة المزيد حول API.

أنظر أيضا

إضافة وتحديث قواعد علبة الوارد على MS Exchange Server في C#إضافة وإزالة أعضاء في قوائم توزيع MS Exchange في Javaأرسل مستند Word في نص البريد الإلكتروني باستخدام C#
إضافة وتحديث قواعد علبة الوارد على MS Exchange Server في Javaإضافة وتحديث وحذف جهات الاتصال من Microsoft Exchange Server في C#إضافة ، تحديث وحذف جهات الاتصال من Microsoft Exchange Server في Java
إضافة وإزالة أعضاء من قوائم توزيع MS Exchange في C#إرسال رسائل بريد إلكتروني عبر SMTP في Python