Manag MAPI Properties

يمكن أن تكون إدارة بيانات البريد الإلكتروني برمجيًا معقدة، خاصة عند التعامل مع خصائص واجهة برمجة التطبيقات للرسائل (MAPI). هذه الخصائص هي سمات أو بيانات وصفية مرتبطة بكائنات MAPI مثل الرسائل والمجلدات والمستلمين ومكونات أخرى في نظام المراسلة. توفر هذه الخصائص معلومات مفصلة حول الكائن، مثل موضوع البريد الإلكتروني، عنوان المرسل، تاريخ إرسال البريد الإلكتروني، وأكثر من ذلك. تُستخدم خصائص MAPI على نطاق واسع في عملاء البريد الإلكتروني وتطبيقات المراسلة الأخرى لإدارة وتلاعب بيانات البريد الإلكتروني. تتناول هذه المقالة تقنيات متنوعة للوصول إلى خصائص MAPI وتعدادها والتلاعب بها باستخدام Aspose.Email لـ .NET.

API .NET لإدارة خصائص MAPI في C#

يوفر Aspose.Email لـ .NET دعمًا شاملاً للتعامل مع خصائص واجهة برمجة التطبيقات للرسائل، مما يسمح للمطورين بإدارة وتلاعب بيانات البريد الإلكتروني مع التحكم المفصل. كما أنه API موسع يتيح للمطورين تجهيز تطبيقات البريد الإلكتروني بميزات قوية لمعالجة الرسائل ومهام أخرى ذات صلة.

باستخدام Aspose.Email لـ .NET، يمكن للمطورين إنشاء حلول متطورة لإدارة ومعالجة البريد الإلكتروني. لبدء استخدام المكتبة، يمكنك تنزيلها من موقع Aspose أو NuGet ودمجها في مشروعك.

فئات خصائص MAPI

تأكد من أن لديك Aspose.Email في مشروعك ودعنا نبدأ. يمكن تصنيف خصائص MAPI إلى ثلاثة أنواع رئيسية: الخصائص القياسية، الخصائص المسمّاة، والخصائص المخصصة (المعرّفة من قبل المستخدم). يخدم كل نوع غرضًا مختلفًا ويقدم مستويات متفاوتة من المرونة والتحكم للمطورين الذين يعملون مع بيانات البريد الإلكتروني. إليك نظرة عامة على كل نوع:

الخصائص القياسية

تعريفها من قبل مواصفات MAPI، لها علامات خصائص مسبقة ويمكن استخدامها عادةً للسمات القياسية لكائنات المراسلة. على سبيل المثال:

الخصائص المسمّاة

تُحدد بواسطة GUID واسم سلسلة أو هوية عددية، تسمح هذه الخصائص بتصنيف وتحديد أكثر تحديدًا يتجاوز الخصائص القياسية.

الخصائص المخصصة (المعرّفة من قبل المستخدم)

تعريفها من قبل المطورين، توسع من وظائف كائنات MAPI، مما يسمح بمعالجة البيانات المخصصة والمحددة للتطبيق.

قائمة جميع خصائص MAPI

لقائمة جميع خصائص MAPI في رسالة، سنستخدم طريقة MapiMessage.Load لتحميل الرسالة والتكرار عبر خصائصها. توضح عينة الشفرة أدناه كيفية تحميل رسالة MAPI، والتكرار عبر خصائصها، وطباعة معلومات مفصلة حول كل خاصية باستخدام Aspose.Email لـ .NET:

  1. تحميل ملف رسالة MAPI من المسار المحدد.
  2. التكرار عبر مجموعة msg.Properties.Values للوصول إلى كل خاصية.
  3. لكل خاصية MAPI، طباعة علامتها، الاسم الكنسي، ونوع البيانات:
    • خاصية Tag توفر المعرف الفريد لخاصية MAPI.
    • خاصية Descriptor.CanonicalName تعطي الاسم القابل للقراءة البشرية للخاصية.
    • خاصية Descriptor.DataType تشير إلى نوع البيانات الخاص بالخاصية.

قائمة خصائص MAPI المسمّاة

بينما يتم تحديد خصائص MAPI العادية بواسطة علامة خاصية 16 بت تتكون من نوع خاصية ومعرف خاصية، يتم تحديد الخصائص المسمّاة بواسطة مجموعة من GUID واسم سلسلة أو هوية عددية:

  • GUID (معرف عالمي فريد): معرف فريد يضمن أن مجموعة الخصائص فريدة. يتم عادةً توفير هذا GUID بواسطة المطور.
  • الاسم أو المعرف:
    • اسم سلسلة (حساس لحالة الأحرف).
    • معرف عدد صحيح 32 بت.

توضح عينة الشفرة التالية كيفية استخدام Aspose.Email لـ .NET للتكرار عبر خصائص MAPI المسمّاة لرسالة وطباعة معلومات مفصلة بناءً على نوع وصف الخاصية:

  1. التكرار عبر كل خاصية مسمّاة من خلال الوصول إلى مجموعة ‘NamedProperties.Values’ لكائن MapiMessage المحمّل للحصول على جميع خصائص MAPI المسمّاة.
  2. التحقق مما إذا كان وصف الخاصية المسماة الحالية من نوع PidNamePropertyDescriptor. إذا كان الأمر كذلك، قم بتحويل الوصف إلى PidNamePropertyDescriptor. اطبع GUID، الاسم الكنسي، ونوع البيانات الخاص بالخاصية.
  3. التحقق مما إذا كان وصف الخاصية المسماة الحالية من نوع PidLidPropertyDescriptor. إذا كان الأمر كذلك، قم بتحويل الوصف إلى PidLidPropertyDescriptor. اطبع GUID، الاسم الكنسي، معرف طويل، ونوع البيانات الخاص بالخاصية.

وبالتالي، قمنا بطباعة سمات محددة مثل PropertySet، CanonicalName، DataType، وLongId بناءً على نوع الوصف (PidNamePropertyDescriptor أو PidLidPropertyDescriptor).

استرداد الخصائص بواسطة الوصف

استرداد الخصائص بواسطة الوصف هو وسيلة بسيطة للوصول إلى خصائص MAPI محددة دون التكرار عبر مجموعة الخصائص بأكملها. يوفر Aspose.Email لـ .NET وسيلة ملائمة لاسترداد الخصائص باستخدام KnownPropertyList. توضح عينة الشفرة أدناه كيفية استرداد وطباعة تفاصيل خاصية معينة، مثل InternetMessageId، إذا كانت موجودة.

  1. الوصول إلى خاصية InternetMessageId من مجموعة الخصائص لكائن MapiMessage باستخدام KnownPropertyList.
  2. التحقق من أن الخاصية ليست فارغة لضمان وجودها في الرسالة.
  3. طباعة تفاصيل الخاصية المستردة: العلامة، الاسم الكنسي، ونوع البيانات.
  4. إذا كان نوع بيانات الخاصية سلسلة، استخدم طريقة GetString لاسترداد قيمة الخاصية وطباعتها.

استرداد الخصائص بواسطة العلامة

علامة الخاصية هي معرف 32 بت يحدد بشكل فريد خاصية MAPI. تتكون من معرف خاصية ونوع خاصية. باستخدام علامات الخصائص، يمكنك الوصول مباشرة إلى خصائص محددة داخل رسالة MAPI. توضح عينة الشفرة أدناه كيفية استرداد وطباعة تفاصيل خاصية معينة، مثل PR_HASATTACH، إذا كانت موجودة.

  1. استخدم MapiPropertyTag للوصول مباشرة إلى خاصية PR_HASATTACH من مجموعة الخصائص لكائن MapiMessage.
  2. التحقق من أن الخاصية ليست فارغة لضمان وجودها في الرسالة.
  3. طباعة تفاصيل الخاصية المستردة: العلامة ونوع البيانات.
  4. إذا كان نوع بيانات الخاصية منطقياً، استخدم طريقة GetBoolean لاسترداد قيمة الخاصية وطباعتها ما إذا كانت الرسالة تحتوي على مرفقات.

استخدام طريقة GetProperty

تبسط طريقة GetProperty عملية استرداد الخصائص العادية والمسمّاة من رسالة MAPI. تتيح لك هذه الطريقة الوصول مباشرة إلى خاصية بواسطة وصفها أو علامتها دون الحاجة إلى التحقق يدويًا من مجموعة الخصائص. توضح عينة الشفرة أدناه كيفية استخدام طريقة GetProperty للوصول إلى خصائص MAPI محددة:

  1. استخدم طريقة GetProperty للوصول مباشرة إلى خاصية CurrentVersionName من فئة KnownPropertyList.
  2. التحقق من أن الخاصية ليست فارغة لضمان وجودها في الرسالة.
  3. استخدم طريقة GetString لاسترداد قيمة الخاصية وطباعتها.

هنا، يتم استخدام GetProperty للوصول مباشرة إلى خاصية CurrentVersionName.

العمل مع الخصائص المخصصة

الخصائص المخصصة MAPI هي خصائص إضافية ليست جزءًا من مجموعة الخصائص المحددة مسبقًا. يتم إنشاؤها لحفظ بيانات محددة للتطبيق ويحددها المطور. من خلال السماح للمطورين بتعريف واستخدام خصائص إضافية، توفر MAPI وسيلة مرنة وقوية لتخزين وإدارة البيانات المخصصة داخل تطبيقات المراسلة. تعتبر الخصائص المخصصة خصائص مسمّاة (تستخدم GUID واسم سلسلة). يقدم Aspose.Email نهجًا يمكنك استخدامه لاسترداد جميع الخصائص المخصصة المحددة في الرسالة. يتم تحقيق ذلك باستخدام طريقة GetCustomProperties. توضح عينة الشفرة أدناه كيفية استرداد وطباعة جميع الخصائص المخصصة المحددة في رسالة MAPI:

  1. استخدم طريقة GetCustomProperties للحصول على مجموعة من جميع الخصائص المخصصة المحددة في الرسالة.
  2. التكرار عبر كل خاصية مخصصة في المجموعة المستردة.
  3. طباعة تفاصيل الخصائص: العلامة، الاسم الكنسي، ونوع البيانات.

الخاتمة

استكشفت هذه المقالة تقنيات متنوعة للوصول إلى خصائص MAPI وتعدادها والتلاعب بها باستخدام Aspose.Email لـ .NET. يوفر Aspose.Email دعمًا شاملاً للتعامل مع هذه الخصائص، مما يسمح للمطورين بإدارة وتلاعب بيانات البريد الإلكتروني مع التحكم المفصل. من خلال استخدام هذه المكتبة، يمكن للمطورين إنشاء حلول متطورة لإدارة ومعالجة البريد الإلكتروني، مما يجعل من الأسهل العمل مع الخصائص القياسية والمسمّاة والمخصصة.

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

انظر أيضًا