إنشاء ميزات مخصصة لمشاريع قاعدة بيانات

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

المهام الشائعة

المهام الشائعة

محتوى إضافي

معرفة المزيد حول النقاط التوافق مع البرامج الخارجية:يمكنك قراءة حول التصميم مشروع قاعدة بيانات القابلية للتوسعة.

  • أهداف للامتداد مشروع

  • تجميعات طراز مكوّن

  • نقاط التوافق مع البرامج الخارجية

  • دورة حياة مشروع قاعدة بيانات

  • خطأ في إدارة

إنشاء ميزة مشروع نموذج:معرفة الخطوات اللازمة لإنشاء ميزة مشروع مخصصة لذلك dهوplays صندوق حوار عند مشروع قاعدة البيانات هو تم تحميله. في حالة اتباع هذه walkthroughs، سوف:

  • إنشاء aVisual Studioحزمة.

  • Cusإلىmize حزمة إلى إنشاء ميزة مشروع قاعدة بيانات.

  • بنية، يثّبت، وقم باختبار ميزة مشروع الجديد الخاص بك.

يثّبت إحدى ميزات مخصصة لمشروع: بعد بنية وبناء ميزة مشروع، يجب تثبيته قبل Visual Studioسوف تتعرف على it.

أهداف للامتداد مشروع

رئيسي الأهداف لقاعدة بيانات مشروع ميزات التوافق مع البرامج الخارجية في Visual Studio 2010هي كالتالي:

  • عرض المكونات الرئيسية من خلال الواجهات
    يحتفظ هذا الأسلوب بالنظام مشروع متناسقة مع الطراز المخطط، باستخدام واجهات بدلاً من فئات مجردة. فئة واحدة خرسانة المتوقع لتنفيذ العديد من الواجهات.

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

  • يمكن توسيع الميزات
    يمكن استخدام ميزات إدارة التوافق مع البرامج الخارجية، XMLالملفات، والسجل أو غير ذلك يؤجل لتوفير تلك التوافق مع البرامج الخارجية.

  • يتم عرض الخدمات من خلال الواجهة الخاصة بها
    DataPackageيطبقIServiceProvider. أي يجب أن تتم معالجة مشتركة للتحدث عن بين الميزات من خلال خدمة في هذه المستويات. التي يجب أن لا تعرض ميزة كـ الخدمة. بدلاً من ذلك، قم بإنشاء واجهة جديدة، clكـs مجمع، وثم يعرض برنامج تضمين كـ الخدمة.

  • أحداث محرك أقراص النظام مشروع
    DataPackageو ProjectNode()تقديم الأحداث التي تقوم بتمكين ميزات إلى محرك الأقراص في نظام مشروع. بالإضافة إلى ذلك، يمكن لميزات توفير الأحداث من خلال الخدمة الخاصة بها الواجهات. في بعض الحالات، قد تقرر إلى استخدام مفوض. قرار الذي ميزة يعالج إجراء، يمكنك استخدام هذا أسلوب حدث الموقع يمكن التفاعل ميزة s، يستند إلى الأفضلية.

  • لا تعتمد تشغيل ترتيب رسائل
    إذا كان ترتيب lهوteners لإحداث هو الهامة، ثم خذ بعين الاعتبار إنشاء حدثاً ما قبل أو بعد أو إضافة خاصية أولوية إلى فئة مشتقة من EventArg.

تجميعات طراز مكوّن

تجميعات التالية توفر النظام مشروع قاعدة بيانات في Visual Studio.

  • Microsoft.VisualStudio.بيانات.مخطط.حزمة.dll
    مشروع النظام الأساسي ويوفر ميزة bootstrapping و eventing. يتضمن ذلك ميزات databكـe-agnostic، مثل كـ برامج نصية.

  • Microsoft.VisualStudio.بيانات.مخطط.PackageUI.dll
    تجميع تابع للحزمة agnostic بقاعدة البيانات.

  • Microsoft.VisualStudio.بيانات.مخطط.حزمة.Sql.dll
    SQL Server-ميزات معينة، المحررين، و أداة الإطارات ل Visual Studio.

  • Microsoft.VisualStudio.بيانات.مخطط.حزمة.SqlUI.dll
    تجميع القمر الصناعي ل SQL Server-ميزات معينة، المحررين، و الأداة الإطارات.

نقاط التوافق مع البرامج الخارجية

يمكنك توسيع نقاط اتباع النظام قاعدة بيانات مشروع:

دورة حياة مشروع قاعدة بيانات

كل ملف مشروع قاعدة بيانات (.dbproj) يحتوي على خاصية مسماة“ DSP ” تشير إلى معينة DatabaseSchemaProviderالذي يعالج th هو المشروع عند ذلك هو المفتوحة في Visual Studio. النظام مشروع إنشاء ملحق المدير باستخدام هذا DSP و ومن بناء الجميع المشاركين نظام المشروع و ميزات للمشروع. يتلقى كل ميزة لحدث يهيّئ حيث أنه يمكن يهيّئ و الجذر نفسها في النظام مشروع بواسطة الاستماع إلى الأحداث.

يتم مرفوع الأحداث التالية أثناء فتح/اغلاق مشروع و حفظ:

  • NewProjectCreated
    Th هو إجراء حدث عند مشروع هو تاريخ الإنشاء للمرة الأولى. يمكنك معالجة هذا حدث إلى عرض معالجات أو مربعات حوار الإعداد.

  • ProjectOpening
    مشروع هو فتح. يمكنك معالجة هذا حدث ل إضافة أية الخدمات IDatabaseProjectNode.

  • ProjectOpened
    يتم إجراء هذا حدث عندما تتم تمت الإضافة الجميع الخدمات و إتمام فتح مشروع. ومع ذلك، مشروع سوف لا بعد مكتمل إلغاء تسلسل حالته السابقة. TaskHostو DataSchemaModelستكون فارغة (NULL) حتى ProjectLoadedحدث هو المرسلة.

  • ProjectLoaded
    مشروع هو تحميل بشكل كامل. TaskHostو DataSchemaModelجاهزة ل استخدم.

  • ProjectClosing
    مشروع هو إغلاق. Th هو هو فرصة بضاعة ل persهوt لأي الولاية المعلومات التي هو خارج ملف مشروع.

  • ProjectClosed
    مشروع هو مغلق.

  • ProjectSaving
    مشروع هو تنفيذ عملية حفظ تشغيل. يمكنك استخدام ترتيب هو كفرصة للتأكد من أن لديك ميزة هو في الولاية ل persهوtence به تخزين.

  • ProjectSaved
    لقد تم تم الحفظ مشروع.

خطأ في إدارة

يحتوي كل مشروع واحد ErrorManager. يتم الاحتفاظ بعض الأخطاء.dbmdl ملف وليست أخطاء أخرى. وهذا يتم التحكم فيها من خلال AddPersistedCategoryفئة. بشكل افتراضي يتم الاحتفاظ هذه الفئات: ModelCategory ، ValidationAtBuildCategory و ValidationOnIdleCategory إذا قمت بإضافة فئة الدائمة أخرى يجب إلى بمعالجة إعادة التحميل للمشروع والتحقق وإدارة الأخطاء. تذكر أنه على الرغم من أنه تم مغلق مشروع، مستخدم قد قمنا بتحرير.dbproj ملف لإزالة ملف التي يتم الإعلام عن خطأ. فسيكون مربكاً جداً للمستخدمين بإنشاء تقرير خطأ في مشروع عندما لا موجود مثل هذا الملف موجوداً.

الكائنات خطأ في قاعدة بيانات تمت الإضافة إلى ErrorManagerفي فئات معينة. الفكرة هو أنه يمكن لميزات مشاريع إدارة عمر الأخطاء الخاصة بها من خلال عمر فئة الخاصة بهم. إذا تم مهتما بأسماء الفئات المتعارضة مع ميزات غير ذلك، قم باستخدام المعرف الفريد عمومي كـ الاسم. ErrorManagerيحدد عدة فئات المضمنة بما في ذلك:

  • DefaultCategory
    Th هو فئة هو مصممة للاستخدام أخطاء تساوي مدة الحياة الخاصة به بعمر مشروع. ولذلك، على سبيل المثال، الأخطاء التي تحدث أثناء تحميل مشروع تضاف في هذه فئة.

  • ModelCategory
    يجب استخدام هذه فئة من قبل مدير المخطط عند مواجهة أخطاء مثل كـ أخطاء محلل.

سيناريوهات ذات صلة

إنشاء إعادة تأهيل قاعدة البيانات أنواع مخصصة أو الأهداف

إنشاء وتسجيل قواعد إضافى لتحليل قاعدة بيانات تعليمات برمجية

قم بإنشاء بيانات اختبار خاصة بمخصص منشئ البيانات

قم بتعريف الشروط المخصصة لوحدة قاعدة بيانات الاختبارات

يخصص قاعدة بيانات بنية والتوزيع باستخدام بنية ونشر المشاركين

راجع أيضًا:

المبادئ

قم بتوسيع ميزات قاعدة بيانات من برنامج ‏‫Visual Studio