الكيان الإطار 4.0: لماذا يمكن للمرء استخدام الشفرة التي تم إنشاؤها EntityObjects كائنات أكثر من POCO؟

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

سؤال

وبصرف النظر عن الوقت اللازم لتطوير أسرع (البصرية ستوديو 2010 بيتا 2 لا يوجد لديه قوالب T4 لبناء الأجسام POCO الكيان الذي أنا على علم)، هل هناك أي مزايا لاستخدام أجهزة EntityObject التقليدية التي إطار الكيان يخلق بشكل افتراضي؟ إذا توفر مايكروسوفت قالب T4 لبناء الأجسام POCO، وأنا في محاولة لمعرفة لماذا أي شخص يريد استخدام الأسلوب التقليدي.

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

المحلول

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

ويمكن وجود EntityObject كوالد أن تكون ميزة على ما يسمى ب "POCOs" (والتي عادة ما تكون قواعد بالوكالة، وليس الأشياء "عادي")، وذلك لأن وقت التشغيل نوع من الكيانات الخاصة بك هي نوع الدقيق الذي تتوقعه، بدلا من وقت التشغيل ولدت النوع الفرعي.

وأيضا، على عكس ORMs الأخرى التي لها الحد الأدنى إلى أي دعم LINQ، وإطار الكيان يحظى بدعم LINQ الغنية، مما يتيح لك <وأ href = "http://blogs.teamb.com/craigstuntz/2009/12/31/ 38500 / "يختلط =" noreferrer نوفولو "> مشروع على حقيقية أنواع POCO. ولذلك، فمن الممكن لبناء العروض حقا استمرار-جاهلة دون الحاجة لرعاية حول ما النوع الأساسي من الكيانات الخاص بك هي. لا عالقون مع أي نوع يخرج من الاسود ORM.

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

وأنا لا تحاول أن يقترح، بالمناسبة، أنه لا توجد مزايا لاستخدام وكلاء. أنا فقط أحاول أن أجيب على سؤالك حول ما مزايا EntityObject هي.

نصائح أخرى

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

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