نظرة عامة حول بيانات التعريف

بيانات التعريف هو يستخدم لوصف أنواع وقت التشغيل (فئات الواجهات وأنواع القيم)، الحقول، والأساليب، بالإضافة إلى معلومات التخطيط والتنفيذ الداخلية التي هو المستخدمة من قبل وقت تشغيل اللغة العامة (CLR). وقت التشغيل باستخدام بيانات التعريف إلى JIT-ترجمة Microsoft Office 2010 Suite لغة المتوسطة (MSIL) تحميل الفئات ينفذ تعليمات برمجية والتعامل مع العالم COM التقليدية أو الأصلية. بيانات التعريف هو المضمنة مع كل مكون CLR، و هو المتوفرة وقت التشغيل والأدوات والخدمات.

تشتمل هذه النظرة العامة على الأقسام التالية:

  • بيانات التعريف API

  • المقارنة مع الخدمات انعكاس

  • النطاق

  • تدقيق الأخطاء

  • مواضيع ذات صلة

بيانات التعريف API

معالجة الجميع بيانات التعريف هو تنفيذها من خلال بيانات التعريف API، الذي insulates عميل (الأدوات والخدمات) من بنيات البيانات المصدر. توفر واجهة برمجة تطبيقات بيانات التعريف تنسيقاً استمرارية القابلة للتوصيل من تمثيلات وقت التشغيل الثنائي ومكتبات النوع الكلاسيكي COM وتنسيقات غير ذلك إلى نقل إلى أو من ذاكرة شكل شفاف.

تتضمن بيانات التعريف لواجهة برمجة تطبيقات واجهات الإرسال (التي هو، إنشاء) ثم قم باستيراد بيانات التعريف. يمكن لعميل الإرسال أو استيراد بيانات التعريف بالطرق التالية:

  • compilers و أدوات إرسال بيانات التعريف بواسطة استدعاء emit API. بيانات التعريف هو emitted أثناء التحويل البرمجي وعملية الربط. أدوات RAD إرسال بيانات التعريف كـ جزء من بناء المكونات أو التطبيقات. كتابة الأعضاء API إلى وقراءة من بنية بيانات في ذاكرة. في حفظ الوقت، ضغط هذه البنى في ذاكرة ويستمر التنسيق الثنائي إلى وحدة الجماعات المستهدفة (ملف.obj) أو ملف تنفيذي (.exe) الملف الثنائي بيانات تعريف مستقل. عندما يتم ربط عدة وحدات التحويل البرمجي إلى النموذج إلى EXE أو مكتبة الارتباط الديناميكي، الأعضاء emit API بتوفير أسلوب إلى دمج مقاطع بيانات التعريف من كل وحدة الترجمة في إلى ملف بيانات تعريف متكامل مفرد ثنائي.

  • استيراد بيانات التعريف المحمل وأخرى وقت التشغيل إلى ols والخدمات باستدعاء واجهة برمجة تطبيقات الأعضاء إلى الحصول على معلومات حول المكونات بحيث يمكن مكتمل مهام مثل تحميل والتنشيط.

العودة إلى الأعلى

المقارنة مع الخدمات انعكاس

يتيح بيانات التعريف لواجهة برمجة تطبيقات بيانات التعريف الخاص بالمكون إلى يمكن الوصول إليه دون الحاجة للفئة إلى يتم تحميلها بواسطة وقت التشغيل. The API هو designed specifically إلى تكبير performance and minimize overhead. مشغل بيانات التعريف توفر البيانات ولكن علامات نقص في توفير وصول مباشر إلى بنيات البيانات في ذاكرة. In تباين, when a فئة هو تم تحميله at run الوقت, the loader imports the بيانات التعريف into its own data structures, which you can browse بواسطة using the runالوقت's انعكاس الخدمات.

الخدمات انعكاس عمل الكثير من بيانات التعريف API. For example, they auإلىmatically walk the inheritance hierarchy إلى obtain information about inherited methods and fields. بيانات التعريف API إرجاع عضوا مباشرا تصريحات لفئة معينة وتحتاج API الأساليب الموروثة من العميل لإجراء اتصالات إضافى إلى تقود هيكلي وتعداد. كشف أسلوب الخدمات انعكاس طريقة عرض عالية المستوى ل بيانات التعريف، بينما هي الطريقة بيانات التعريف API يضع العميل API في التحكم الكامل walking بنيات البيانات.

العودة إلى الأعلى

النطاق

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

ملاحظةملاحظة

يعني الكلمة وحدة نمطية هنا ملف يحتوي على بيانات التعريف.عادة ما يكون.obj أو.exe أو ملف.dll الذي يحتوي على بيانات التعريف ورمز اللغة المتوسطة (MSIL) Microsoft Office 2010 Suite، ولكن يمكن أيضا أن يكون ملف الذي يحتوي على بيانات التعريف فقط.

كل مساحة منفصلة في بيانات التعريف في ذاكرة هو يشار إليها على نطاق . يطابق كل نطاق وحدة نمطية? واحدة. غالباً ما يتم تم الحفظ الوحدات النمطية كملفات تشغيل dهوk، ولكن th هو هو غير مطلوب. على سبيل المثال، عادة أدوات البرمجة النصية بتوليد بيانات التعريف التي هو persهوted مطلقا في ملف.

يتم استخدام نطاق المصطلح لأنها تمثل المنطقة داخل الذي تم تعريف الرموز المميزة لبيانات التعريف. على سبيل المثال، بيانات التعريف الرمز المميز ب قيمة N يعرف تفاصيل حول تعريف فئة ضمن نطاق معين. ومع ذلك، قد تتوافق مع بيانات تعريف إلى ken مع نفس القيمة ل إلى مجموعة مختلفة تماما من التفاصيل عن نطاق مختلف.

إلى إنشاء نطاق بيانات تعريف في ذاكرة، يمكنك استدعاء CComPtrBase::CoCreateInstance أسلوب الواجهة IMetaDataDispenser. وهذا أسلوب إنشاء نطاق جديد أو فتح التعيين موجودة من بنيات بيانات التعريف من الموقع الملف أو ذاكرة. مع كل استدعاء إلى IMetaDataDispenser::DefineScope أو IMetaDataDispenser::OpenScope أسلوب، والمتصل بتعيين أي API إلى تلقي:

  • تمكين الواجهة Iبيانات التعريفEmit أدوات الكتابة إلى بيانات التعريف النطاق.

  • تمكين الواجهة IMetaDataImport إلى ols إلى القراءة من نطاق بيانات تعريف.

العودة إلى الأعلى

تدقيق الأخطاء

بيانات التعريف API يقوم بالتحقق من الخطأ دلالية بحد أدنى. The بيانات التعريف API وظائف assume that the أدوات و الخدمات that emit بيانات التعريف are enforcing the كائن النظام rules that are outlined in the common نوع النظام, و that أي additional يتم الآن التدقيق بواسطة the بيانات التعريف engine during development time هو superfluous.

العودة إلى الأعلى

مواضيع ذات صلة

Title

الوصف

الرموز المميزة لبيانات التعريف

توفير معلومات حول بيانات التعريف إلى kens، التي تستخدم إلى تعريف abstractions ويشرح كيفية استخدامها مع واجهة برمجة تطبيقات بيانات التعريف.

ترميز اصطلاحات لبيانات التعريف API

Describes the coding conventions that are used بواسطة the بيانات التعريف API.

بيانات التعريف الواجهات

توضح هذه المقالة الواجهات غير المدارة التي توفر الوصول إلى بيانات التعريف المعروضة بأنواع من برنامج.NET Framework، والأساليب، والحقول، وهكذا.

بيانات التعريف العمومية وظائف ثابتة

توضح هذه المقالة مدار ثابت العمومية الدالات التي بيانات التعريف API يستخدم.

تعدادات بيانات التعريف

وصف عمليات التعداد غير المدار الذي بيانات التعريف API يستخدم.

بنيات بيانات التعريف

توضح هذه المقالة مدار بنيات بيانات التعريف API يستخدم.

الاتحادات بيانات التعريف

توضح هذه المقالة الاتحادات غير المدار الذي يستخدم واجهة برمجة تطبيقات بيانات التعريف.

العودة إلى الأعلى