شماره تماس 09336863931 | 09178169907 پست الکترونیک provid.ir@gmail.com

آموزش شروع به کار با Entity Framework در دات نت #9

آموزش شروع به کار با Entity Framework در دات نت #9 قسمت نهم از یک سری آموزشی از وبسایت پرووید است که در رابطه با اصول مقدماتی کار کردن با تکنولوژی Entity Framework تنظیم شده است. پس از این دوره ی آموزشی می توانید از بسته های آموزشی وبسایت پرووید در رابطه با Entity Framework را استفاده کنید.

در قسمت قبلی از این آموزش در مورد انواع Entity ها در Entity Framework صحبت کردیم.

تعریف Entity State در Entity Framework

جالب است بدانید که API مربوط به Entity Framework حالت و یا همان State مربوط به هر کدام از Entity ها را در طول زمان عمرشان نگهداری می کند. هر Entity State بر اساس عملیاتی که توسط کلاس Context بر روی آن انجام شده است تعریف می شود. Entity State یک Entity توسط یک enum با نام System.Data.Entity.EntityState در Entity Framework 6 و با نام Microsoft.EntityFrameworkCore.EntityState در Entity Framework Core تنظیم می شود. مقادیر مربوط به این enum از این قرارند:

آموزش نکات طلایی Entity Framework برای برنامه های تجاری

از شما دعوت می کنیم از بسته ی آموزش نکات طلایی Entity Framework برای برنامه های تجاری دیدن کنید.

  • Added
  • Modified
  • Deleted
  • Unchanged
  • Detached

کلاس Context نه تنها یک Reference را به تمامی Entity های خوانده شده از بانک اطلاعاتی در درون خود نگهداری میکند بلکه تغییرات ایجاد شده روی Entity State هر کدام از آن Entity ها را نیز نگهداری می کند. با استفاده از این مکانیزم تغییراتی که بر روی پروپرتی های هر کدام از این Entity ها ایجاد می شود امکان ذخیره سازی مجدد بر روی بانک اطلاعاتی را دارند. این قابلیت از Entity Framework تحت عنوان Change Tracking شناخته می‌شود. تنها تغییری در Entity State یک Entity به صورت خودکار توسط کلاس Context هندل می شود تغییر Entity State از Unchanged به Modified است. تمامی تغییرات دیگر که بر روی Entity State یک Entity اتفاق می افتد باید به طور Explicit با استفاده از متدهای مناسب از کلاس DbContext و یا DbSet لحاظ بشوند.

بسته ی جامع 5 Entity Framework

از شما دعوت می کنیم از بسته ی جامع 5 Entity Framework دیدن کنید.

جالب است بدانید که API مربوط به Entity Framework دستورات مناسب CRUD را بر اساس Entity State یک Entity در زمان فراخوانی متد SaveChanges اجرا می کند. برای Entity هایی که حالت آنها Added است دستور INSERT بر روی بانک اطلاعاتی اجرا میشود. برای آن دسته از Entity هایی که Entity State آنها بر روی Modified تنظیم شده است دستور مناسب UPDATE بر روی بانک اطلاعاتی اجرا شده و نهایتاً برای آن دسته از Entity هایی که Entity State آنها Deleted می باشد دستور DELETE مناسب بر روی بانک اطلاعات اجرا می شود. علاوه بر این کلاس Context تغییرات ایجاد شده بر روی Entity هایی که Entity State آنها بر روی Detached تنظیم شده است را انجام نمی دهد. تصویر زیر اهمیت Entity State ی Entity ها در Entity Framework را به تصویر کشیده است.

بنابراین می توان گفت که Entity State در Entity Framework نقش بسیار با اهمیتی را ایفا می کند.

در قسمت بعدی از این آموزش در مورد روشهای توسعه با استفاده از Entity Framework صحبت خواهیم کرد.

نظر بدهید

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