سبق في الأجزاء السابقة أنو تكلمنا عن تقنية الـ ADO.NET وتقنية الـ LINQ To SQL
واليوم حنتكلم عن تقنية الـ Entity Frameworkk طبعاً دا أحدى الطرق المضمنة في تقنية الـ ADO.NET في الوضع المنفصل ....وقد تكلمنا عنها بشكل سابق وتعتبر تطوير لتقنية الـ LINQ to SQL
واليوم حنتكلم عن تقنية الـ Entity Frameworkk طبعاً دا أحدى الطرق المضمنة في تقنية الـ ADO.NET في الوضع المنفصل ....وقد تكلمنا عنها بشكل سابق وتعتبر تطوير لتقنية الـ LINQ to SQL
تقنية الـ Entity Framework تقوم بتحويل جداول قاعدة البيانات بفئات تتضمن طرق وخصائص تمثل كائنات قاعدة البيانات ... بمعنى لو عندك T ableبالإسم Employees وفيهو حقول ID , FirstName , LastName إلخفإن هذه التقنية ستقوم بتوليد فئة Class بالإسمم Employees وإضافة Properties بنفس أسماء حقول الـ Tablee الموجود في قاعدة البيانات
يعني ممكن نقول أن هذه التقنية تقوم بإنشاء نموذج Model لكائنات قاعدة البيانات ... طبعاً بتوفر عليك الكثير من الجهد خصوصاً لو كان مشروعك البرمجي متعدد الطبقات N-Tier Applications.
يعني ممكن نقول أن هذه التقنية تقوم بإنشاء نموذج Model لكائنات قاعدة البيانات ... طبعاً بتوفر عليك الكثير من الجهد خصوصاً لو كان مشروعك البرمجي متعدد الطبقات N-Tier Applications.
من الميزات الجميلة لهذه التقنية .... هو أن نموذج البيانات Data Model القاعدة عندك في المشروع .... لا يشترط ان يكون مطابقاَ لما هو موجود في قاعدة البيانات .... بمعنى أنو بإمكانك تخصيص شكل نموذج البيانات ليكون مختلفا عما هو في قاعدة البيانات.
هناك ثلاثة أنماط لإستخدام الـ Entity Framework
- النمط الأول هو الـ Code First .... وهي أن تقوم بإنشاء الـ Classes و Propertiess والـ Methods من خلال الكود ويتم تلقائياً إنشاء قاعدة البيانات بناءاً على الكلاسات الحددتها ليهو.
- النمط الثاني هو الـ Database Firstt ... وهي أن تقوم بتحديد مكان قاعدة البيانات وتقوم التقنية بإنشاء الـ Classes وملحقاتها في مشروعك بناءاً على الجداول الموجودة في قاعدة البيانات.
- النمط الثالت وهو Model First وهنا نقوم بإنشاء الـ Modell في شكل واجهات رسومية أو Diagrams ويقوم من خلال الـ Diagrams القمنا بتصميمه في بإنشاء قاعدة البيانات.
تدعم تقنية الـ Entity Framework قواعد بيانات أخرى غير SQL Server كـ Oracle و MySQL وغيرها على عكس الـ LINQ To SQL تدعم فقط الـ SQL Server.
بالنسبة لمبرمجي تطبيقات الويب في ASP.NET MVC تقوم تقنية الـ Entity Framework مع تقنية الـ Razor في ASP.NET MVC بعمل حاجة بتسمى Scaffoldingg وهي تقوم بتصميم View صفحاتك بشكل أتوماتيكي بناء على البيانات الموجودة في Modell وتستخدم التصميم بالـ Bootstrap بشكل إفتراضي ويقوم بإنشاء خمس صفحات لكل Controller الصفحة الأولى Index يعرض فيها البيانات الرئيسية من الجدول ... وصفحة Create لإضافة بيانات جديدة وصفحة Edit لتعديل بيانات موجودة مسبقاً وصفحة Delete لحذف بيانات من قاعدة البيانات مع رسالة تأكيد في حال تريد الحذف .... وأخر صفحة هي الـ Details والتي تعرض فيها تفاصيل البيانات التي تم إختيارها. وطبعاً يمكن التعديل على عمليات الـ Scaffoldingبالطريقة التي تناسبك وتناسب فريق العمل المتواجد معك لتوفير الوقت الكبير في إنجاز المشاريع بجودة عالية وسرعة ... وممكن تتحكموا في طريقة التصميم وأيضا طريقة برمجة الصفحات بما يناسبكم وتقوم عملية الـ Scaffolding بتوليد تصميم الصفحات والأكواد بالطريقة التي حددتها في الـ Templates الخاصة بها. شاركونا بأرائكم حول هذا الموضوع نتمنى لكم قضاء أطيب الأوقات.

إرسال تعليق