Entity Framework Core 6 with Database اول در NET 6
این مقاله نحوه اتصال برنامه NET 6 خود را با استفاده از Entity Framework Core به یک پایگاه داده موجود توضیح می دهد. در کنار این تئوری، یک مثال عملی داده میشود که در آن یک برنامه کنسول جدید با استفاده از NET 6 ایجاد میکنیم، سپس این برنامه کنسول به یک نمونه از پیش موجود از NorthWind DB با Entity Framework Core و رویکرد Database First متصل میشود.
اگر رویکرد Database First را در Entity Framework Core با استفاده از NET 6 با نسخه های قبلی .NET Framework مقایسه کنیم، می توانیم متوجه شویم که تغییرات مهمی ایجاد شده است. قبل از اینکه ما پایگاه داده خود را بر اساس فایل .EDMX داشتیم، و مجبور بودیم این فایل .EDMX را هر بار که به روز رسانی در پایگاه داده داشتیم، به روز کنیم. حال با دستور scaffold همان موجودیت هایی را ایجاد می کنیم که گویی پایگاه داده را با استفاده از رویکرد کد اول ایجاد کرده ایم.
Entity Framework Core چیست؟
Entity Framework Core قدرتمندترین ORM مایکروسافت – Object Relational Mapper است که به برنامههای کاربردی نرمافزار کمک میکند تا موجودیتها را به طیف گستردهای از پایگاههای داده نقشهبرداری، اتصال و مدیریت کنند. Entity Framework Core نیز منبع باز و کراس پلتفرم است و اولین ORM مورد استفاده مهندسان نرم افزار هنگام کار با فناوری های مایکروسافت است.
در لحظه نوشتن این مقاله، Entity Framework Core دو گزینه برای اتصال موجودیت های شما به پایگاه داده ارائه می دهد:
- کد ابتدا، ابتدا موجودیت های پروژه خود را بنویسید و سپس آن اشیاء را در پایگاه داده منعکس کنید. این گزینه پایگاه داده را بر اساس کد ایجاد می کند.
- پایگاه داده ابتدا، نیاز به اتصال پایگاه داده شما، که قبلا ایجاد شده است، به یک برنامه جدید متصل شود. این گزینه کد کلاس را بر اساس مدل پایگاه داده ایجاد می کند.
Database First چیست؟
ابتدا پایگاه داده رویکردی است که توسط Entity Framework زمانی استفاده می شود که ما نیاز به مهندسی معکوس مدل پایگاه داده خود در کلاس هایی داریم تا توسط برنامه ما مصرف شود. این امکان بسیار خوبی برای اتصال پروژه های جدید با پایگاه های داده موجود می دهد، که یک ویژگی بسیار مهم در هنگام انتقال نرم افزار به فناوری جدید است.
رویکرد Database First می تواند اشیاء موجود در پایگاه داده شما را به کلاس های پروژه شما تبدیل کند. Database First توسط تمام ارائه دهندگان Entity Framework Core پشتیبانی می شود و قادر است فیلدهای داده، انواع داده ها و روابط جدول را از طیف گسترده ای از منابع داده به زبان پروژه شما منعکس کند.
هنگامی که شما نیاز به اتصال یک پایگاه داده موجود به یک پروژه کاملاً جدید دارید، قطعاً باید رویکرد Database First را در نظر بگیرید تا اوقات فراغت خود را در پروژه خود منعکس کنید.
مزایای استفاده از پایگاه داده اول
مزیت اصلی رویکرد Database First این است که میتوانیم پروژههای جدید را به پایگاههای داده موجود متصل کنیم، مهم نیست که این پایگاه داده از قبل توسط فناوریهای مختلف استفاده میشود. همچنین میتوانیم پروژهای را شروع کنیم و مسئولیتها را برای مدلسازی پایگاه داده تقسیم کنیم و معماری پروژه را طراحی کنیم تا به صورت موازی توسط تیمهای مختلف اجرا شود، برای اینکه بعداً با استفاده از رویکرد اول پایگاه داده پروژه را با پایگاه داده ایجاد شده متصل کنیم.
اگر پس از ایجاد موفقیت آمیز موجودیت ها در پروژه خود با استفاده از رویکرد اول پایگاه داده و متوجه شدید که باید هر شیء را در پروژه و/یا پایگاه داده خود به روز کنید، گزینه های زیر را داریم:
- اگر کد خود را تغییر می دهید و می خواهید در پایگاه داده منعکس شود، باید از دستورات مهاجرت استفاده کنید.