Entity Framework چیست ؟

Entity Framework مجموعه‌ای از تکنولوژی‌ها در ADO.NET (بخشی از چهارچوب زبان ASP.NET) است که هدف آن در اختیار گذاشتن برخی از قابلبت‌های برنامه‌نویسی شی‌گرا بخصوص در استفاده از بانک های اطلاعاتی برای برنامه‌نویسان می‌باشد.

قبل از EF بهتر است با مفهوم ORM  آشنا شویم. ORM یا Object Relational Mapping ابزاری است که به وسیله آن می توان جداول پایگاه داده را پردازش کرد و آنها را به فرمت شی نگاشت کرد که در کدنویسی خواناتر باشند. در کدنویسی به جای این که به صورت مستقیم با جداول پایگاه داده کار کنیم بر روی اشیاء کار می کنیم. به این اشیاء موجودیت یا Entity گفته می شود. Entity Framework  یک ORM است که توسط شرکت Microsoft توسعه داده می شود.

مزایای استفاده از EF:

  • دسترسی به داده ها را ساده می سازد و به ما اجازه می دهد تا مدل مفهومی مورد نیاز برای کسب و کار را ایجاد کنیم.

 

  • EF اجازه میدهدتا شما روابط چندبه چند (n: n) را بدون Join های متعدد مدیریت نمایید.

 

  • جهت کاهش پیچیدگی کد، جداول مرتبط را در یک Entity مدل می کند.

 

  • پشتیبانی غنی و خوب از ارث بری ها برای جدول به ازای سلسله مراتب، زیرکلاس (subclass) و تایپ های به هم چسبیده (concrete type).

 

  • چون Entity Framework دارای مکانیسم بسیار قوی Query گیری از Entity ها است، کسانی که مایل به استفاده از LINQ نیستند، می توانند از Entity Client Provider  همراه با EntitySQL استفاده نمایند.

 

  • EF مستقل از نوع پایگاه داده می باشد و بر اساس استاندارد ADO.NET Providers کار می کند.

معایب:

  • امکانات ناکافی: با وجود اضافه شدن امکانات زیادی به نسخه 4، اما این ابزار هنوز نسبت به  ORM های محبوب، دارای کم و کاستی هایی هست.

تسلط پایین بر کد تولید شده: به خاطر استفاده از Designer، بر روی کدی که تولید می شود، نمی توان روی کدها تسلط زیادی داشت که البته با استفاده از کلاسهای  Partial، این مساله تا حدی بهبود داده شده است.


دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

پانزده − شش =