Microsoft Exchange Server عبارة عن منصة تعاون مستخدمة على نطاق واسع توفر البريد الإلكتروني وإدارة جهات الاتصال والتقويم والخدمات الأخرى. في المنشور السابق ، أوضحنا لك كيفية الوصول إلى رسائل البريد الإلكتروني وقراءتها من MS Exchange Server برمجيًا في تطبيق .NET. ومع ذلك ، قد تحتاج أيضًا إلى نسخ رسائل البريد الإلكتروني من مجلد إلى آخر على Exchange Server. لتحقيق ذلك ، توضح هذه المقالة كيفية نقل رسائل البريد الإلكتروني إلى مجلد معين على MS Exchange Server في C# .NET.
- NET API لنقل رسائل البريد الإلكتروني على خادم Microsoft Exchange
- نقل البريد الإلكتروني الموجود إلى مجلد على خادم MS Exchange
- نقل البريد الإلكتروني الجديد إلى مجلد على MS Exchange Server
C# .NET API لنقل رسائل البريد الإلكتروني على خادم Microsoft Exchange
لنقل رسائل البريد الإلكتروني إلى MS Exchange Server ، سنستخدم Aspose.Email for .NET. توفر API طرقًا بسيطة للاتصال والعمل مع MS Exchange Server. يمكنك تثبيته عبر NuGet أو تنزيل DLL الخاص به.
PM> Install-Package Aspose.Email
نقل البريد الإلكتروني إلى مجلد على MS Exchange Server في C#
فيما يلي خطوات نقل رسائل البريد الإلكتروني إلى مجلد معين على MS Exchange Server في C#.
- أولاً ، قم بتهيئة كائن IEWSClient باستخدام اسم المستخدم وكلمة المرور والمجال و URI.
- بعد ذلك ، احصل على قائمة برسائل البريد الإلكتروني في كائن ExchangeMessageInfoCollection باستخدام طريقة IEWSClient.ListMessages (IEWSClient.MailboxInfo.InboxUri).
- بعد ذلك ، قم بالتكرار خلال كل رسالة ExchangeMessageInfo وقم بتصفية الرسالة (الرسائل) المطلوبة.
- بعد ذلك ، احصل على URI للرسالة المراد نقلها باستخدام خاصية ExchangeMessageInfo.UniqueUri.
- أخيرًا ، انقل رسالة البريد الإلكتروني باستخدام طريقة IEWSClient.CopyItem (سلسلة URI ، IEWSClient.MailboxInfo.DeletedItemsUri).
يوضح نموذج التعليمات البرمجية التالي كيفية نقل بريد إلكتروني إلى مجلد على MS Exchange Server في C# .NET.
try
{
// إنشاء مثيل لفئة EWSClient عن طريق إعطاء بيانات الاعتماد
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");
// طريقة Call ListMessages لسرد معلومات الرسائل من صندوق الوارد
ExchangeMessageInfoCollection msgCollection = client.ListMessages(client.MailboxInfo.InboxUri);
// قم بإجراء حلقة عبر المجموعة للحصول على عنوان URI للرسالة
foreach (ExchangeMessageInfo msgInfo in msgCollection)
{
if (msgInfo.From.Address.Contains("jhon.vick"))
{
String strMessageURI = msgInfo.UniqueUri;
// نسخ إلى مجلد معين
string newMessageUri = client.CopyItem(strMessageURI, client.MailboxInfo.DeletedItemsUri);
}
}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
انقل بريد إلكتروني جديد إلى مجلد على خادم MS Exchange
يمكنك أيضًا نقل بريد إلكتروني تم إنشاؤه حديثًا إلى مجلد معين في MS Exchange Server. فيما يلي خطوات إجراء هذه العملية.
- أولاً ، قم بتهيئة كائن IEWSClient باستخدام اسم المستخدم وكلمة المرور والمجال و URI.
- ثم قم بإنشاء رسالة جديدة باستخدام فئة MailMessage.
- بعد ذلك ، احصل على عنوان URI لرسالة البريد الإلكتروني الذي تم إرجاعه بواسطة طريقة IEWSClient.AppendMessage (MailMessage).
- أخيرًا ، انقل رسالة البريد الإلكتروني باستخدام طريقة IEWSClient.CopyItem (سلسلة URI ، IEWSClient.MailboxInfo.OutboxUri).
يوضح نموذج التعليمات البرمجية التالي كيفية نقل رسالة بريد إلكتروني جديدة إلى مجلد في MS Exchange Server.
try
{
// إنشاء مثيل لفئة EWSClient عن طريق إعطاء بيانات الاعتماد
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");
// خلق رسالة
MailMessage message = new MailMessage("from@domain.com", "to@domain.com", "EMAILNET-34997 - " + Guid.NewGuid().ToString(), "EMAILNET-34997 Exchange: Copy a message and get reference to the new Copy item");
// الحصول على عنوان URI للرسالة
string messageUri = client.AppendMessage(message);
// نسخ الرسالة
string newMessageUri = client.CopyItem(messageUri, client.MailboxInfo.OutboxUri);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
احصل على ترخيص API مجاني
يمكنك الحصول على ترخيص مؤقت مجاني لاستخدام Aspose.Email لـ .NET بدون قيود تقييم.
استنتاج
في هذه المقالة ، تعلمت كيفية نقل رسائل البريد الإلكتروني إلى مجلد معين في Microsoft Exchange Server باستخدام C#. علاوة على ذلك ، لقد رأيت كيفية نقل رسالة بريد إلكتروني تم إنشاؤها حديثًا إلى مجلد معين في Exchange Server. بالإضافة إلى ذلك ، يمكنك استكشاف التوثيق لقراءة المزيد عن Aspose.Email لـ .NET. يمكنك أيضًا طرح أسئلتك عبر المنتدى.