يجب أن إنشاء نموذج البيانات ADO.NET الكيان لكل جدول، أو واحد لقاعدة البيانات الخاصة بي بالكامل؟

StackOverflow https://stackoverflow.com/questions/1028739

سؤال

هل من المفترض أن تستخدم واحدة ADO.NET الكيان نموذج البيانات لكل جدول؟ أو واحد لقاعدة البيانات الخاصة بك بأكملها حيث يتم توجيهها أيضا العلاقات، الخ ...

هل كانت مفيدة؟

المحلول

هل لأنها لقاعدة البيانات بأكملها. إذا قمت بإجراء نموذج البيانات عن كل طاولة سوف لا يكون لديك صالح التنقل في العلاقات.

إذا كنت تستخدم الخروج / دمج التحكم بالمصادر مثل التخريب، يجب أن تدرك أن munges المصمم XML إلى الحد الذي التخريب تناضل من أجل دمجه. في هذه الحالة لديك عادة لتجديد نموذج كامل في كل مرة أو دمج باليد.

نصائح أخرى

وأنا استخدم نموذج بيانات الكيان للجداول ذات الصلة. اعتمادا على حجم قاعدة البيانات الخاصة بك وأود أن خلق نموذج واحد فقط إذا كان هناك أقل من 20 أو 25 الجداول. أنها مكلفة بعض الشيء لخلق نماذج الفردية لكل الجدول لأن كل نموذج يحتوي على كائن EntityConnection المراد إنشاؤه.

وأجد أنني يمكن الحفاظ على نماذج جيدة إلى حد ما إذا كان لدي ما بين 5 و 15 الجداول. بلدي العامل الحاسم الرئيسي هو وظيفة. I بناء التطبيقات الهندسية ذلك على سبيل المثال لدي حوالي 6 جداول مكونات الفولاذ الهيكلية. انهم جميعا في نموذج واحد. إلا أنهما يشتركان سمات هندسية مشتركة لذلك فمن الأسهل لإعادة تعليمة برمجية محددة لمعالجة تلك الصفات.

وهذا يعني أنه يمكنني مثيل النموذج، وخلق الكائنات، والتلاعب / تنظيم هذه الكائنات داخل ملف رمز مشترك. أي التغييرات التي تحتاج إلى propogated إلى قاعدة بيانات يمكن القيام به بكفاءة تامة.

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

وmaipulation الذاكرة هو أرخص بكثير من أداء القرص ثم I / O. هذا هو مجرد بلدي يأخذ على إطار وبأي حال من الأحوال أنا خبير في ذلك.

واحد لقاعدة البيانات الخاصة بك بأكملها أو على الأقل الجداول التي سوف تستخدم ...

إذا كان لديك كمية كبيرة من الجداول التي يمكن تفريقهم في المخططات أو بأخرى الفئوية الأخرى، ولكن أود أن أقول أن الفكرة لم تكن أبدا نموذج البيانات في الجدول ...

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

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

وأعتقد إذا كنت تواجه قاعدة بيانات كبيرة فأنت بحاجة لتصنيف جداول قاعدة البيانات. ولكن لديك لإنشاء فئة لكل جدول وهذا هو الشرط الأساسي لإطار كيان ADO.NET.

وعندما تقوم بتحديث قاعدة البيانات ثم يمكنك أن تفعل مع نموذج تحديث البيانات.

أولا تصميم قاعدة البيانات الخاصة بك ثم خلق ado.net نموذج الكيان.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top