تجاربكم مع Entity Framework 7

السلام عليكم ورحمة الله وبركاته

أجزم أن أغلبكم ممن تعامل مع منصة مايكروسوفت للتطوير .NET يعرف أو استخدم إطار العمل انتيتي Entity

للذين لم يتح لهم بعض معرفة الإطار .. هو عبارة object-relational mapping والــORM هي تقنية لتحويل قواعد البيانات العلائقية إلى كائنات موجهة للتعامل معها بسلاسة في البرنامج المراد تطويره.

هناك ثلاث مقاربات للإطار :

Model First: وهو أن يكون لديك أنموذج من خلاله تخلق قاعدة البيانات في أي محرك وتبدأ في التعامل معها ..

Database First : وهو نهج جميل كونه يتيح لك التعامل وتحويل قواعد بيانات موجودة أساسا إلى نمودج لديك في الفيزيال ستوديو ومن ثم تتعامل معها على أنها كانئات موجهة

النهج الثالث وهو Code First وهو أن تقوم بإنشاء السياقات والكيانات من خلال الشفرة وثم تحولها إلى قاعدة بيانات وخريطة نموذجية

لمن جرب الإطار أتمنى أن يقدم لنا تجربته ويوضح لنا الإطار وفؤائده أكثر .

وأي مطور ل .NET ومن لم يجربه عليه به حقا ..كون الإطار مساعد وجميل حقا

بالمناسبة الإطار مفتوح المصدر :D

يرجى الدخول لحسابك أو تسجيل حساب لتستطيع إضافة تعليق
حساب جديد دخول

التعليقات

أعمل على هذا الاطار منذ 2008 ، ونسيت حتى كيفية كتابة جمل استعلام SQL

الاطار 7 ، به العديد من الإضافات ولكن بمجملها فنية ولدعم كافة الأنظمة ، أي أنك كمبرمج مواقع أو برامج متوسطة وصغيرة لن تشعر بها، ولكن لو كنت تبني أنظمة كبيرة سترى الفرق، ان شاء الله أرى ما الجديد في 7 ويعطيني الله القوة لاعمل فيديو عنها

جميل أخي خليل هل لك أن تقدم لنا تجربتك أكثر مع الإطار السادس ؟

وأي مقاربة تستخدم أكثر ؟؟

وهل تستخدم الإجراءت المخزنة في السيرفر أم كل شيء في الكود مع Cشارب ؟؟

نستخدم في الفريق غالبا Database first approach  ولكن حين بناء مشاريع ب ASP.NET MVC وتكون صغيرة الى متوسطة نستخدم Code First Approach

الاطار السادس به إضافات كثيرة ومفيدة، أغلبها تفيد فعليا لمن يستخدم Code First  وتقدم بناء خيارات أوسع له، مثلا بناء جدول من فئتين ( Class ) سابقين.

إذا كان قصدك الإجراءات المخزنة في السيرفر Stored Procedure  ، حقيقة وبكل وضوح لربما آخر 5 سنوات كتبت 1 أو اثنين فقط

الإجراءات هذه لها هدفين في السابق

1- الأمان العالي ، مثلا التصدي ل SQL Injection ، وهو ما حلته Entity Framework ( EF )

2- الأداء العالي، وأيضا تم حله

يبقى هنالك خيار الفنيات في هذه الاستعلامات مثل كتابة جمل شرطية وتكرار وإعادة قيم وعمل جداول مؤقتة، ولا غنى عن استخدام Stored Procedures ( SP )  في هذه الحالات، ولكن يمكن كتابة SP واستدعاؤه من خلال EF بكل كفاءة

الخلاصة أنصح بشدة باستخدام EF ، رغما عنك مايكرسوفت ترغمك على استخدامه، مثلا حاولت تعمل Scaffolding  لقاعدة البيانات، ستجد أن يحاجه الى EF

حاول تعمل WCF Data Service  ستجد أن بحاجة لاستخدام EF

حاول تنشئ Web API ستجد أنك بحاجة إلى EF

الفنيات والاحتراف يفرض عليك استخدام EF

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

وسأحاول وضع ماتوصلتُ له هنا بإذن المولى