
آموزش شروع به کار با Entity Framework Core 2.0
آموزش شروع به کار با Entity Framework Core 2.0 یکی دیگر از آموزش های گروه آموزشی پرووید می باشد که در این قسمت آن را به شما معرفی می کنیم. این بسته ی آموزشی نیز یکی از دوره های آموزشی دیگر که در حوزه ی فارسی سازی آموزش های انگلیسی تنظیم شده است می باشد. عنوان این بسته ی آموزشی شروع به کار با Entity Framework Core 2.0 است که با نام اصلی Entity Framework Core 2.0 - Getting Started از شرکت Pluralsight منتشر شده است.
Entity Framework چیست؟
Entity Framework یک object-relational mapper که به برنامه نویسان دات نت این امکان را می دهد که با داده های بانک های اطلاعاتی در قالب Object های محیط شی گرا کار کنند. به عبارت دیگر، دیگر نیازی به نوشتن کدهای دسترسی به داده ها که در ADO.NET نوشته می شوند نیست. قدرت بسیار بالای Entity Framework در انجام وظایف اولیه شبیه عملیات CRUD، استفاده از LINQ، استفاده از Stored Procedure ها، استفاده از View ها، TVF ها، در دسترس بودن Entity SQL و … از ویژگی هایی ست که این تکنولوژی بسیار قدرتمند در اختیار توسعه دهندگان نرم افزار قرار می دهد.
Entity Framework Core چیست؟
Entity Framework Core جدیدترین تکنولوژی مایکروسافت برای ساخت لایه ی Data Access در برنامه ی cross-platform می باشد. این نسخه از Entity Framework یک نسخه ی سبک وزن، قابل گسترش و cross-platform می باشد. در مقایسه با ورژن ششم Entity Framework بهبودهایی در EF Core 2.0 انجام شده است. علاوه بر این، بسیاری از API های EF Core 2.0 با EF 6 مشابه هستند.
تفاوت Entity Framework Core با Entity Framework چیست؟
Entity Framework Core نسخهای سبکتر و چندسکویی از خانواده فناوری Entity Framework است که برای دسترسی به دادهها در برنامههای .NET طراحی شده است. این فناوری امکان کار با دادههای پایگاه داده از طریق موجودیتها و مدلهای شیگرا را فراهم میکند و بخش زیادی از عملیات متداول دسترسی به داده را سادهتر میسازد. Entity Framework Core با نسخه کلاسیک Entity Framework تفاوتهایی در معماری، قابلیتها و پشتیبانی از فناوریهای مختلف دارد؛ بنابراین هنگام انتخاب آن باید نیازهای پروژه و نسخه مورد استفاده را در نظر گرفت.
در Entity Framework Core 2.0، توسعهدهندگان میتوانند مدل داده تعریف کنند، ارتباط میان موجودیتها را مشخص سازند و عملیات خواندن و ذخیرهسازی اطلاعات را انجام دهند. این نسخه بخشی از روند توسعه نسخههای اولیه EF Core است و برخی قابلیتها و محدودیتهای آن با نسخههای جدیدتر تفاوت دارند. به همین دلیل، شناخت ویژگیهای نسخه 2.0 بهویژه برای بررسی پروژههای قدیمی یا یادگیری مفاهیم پایه این فناوری اهمیت دارد. هنگام توسعه پروژه جدید نیز بهتر است نسخههای پشتیبانیشده و نیازهای فنی برنامه بررسی شوند.
ساخت Data Model و Database با Entity Framework Core 2.0
Data Model ساختاری است که موجودیتهای برنامه، ویژگیهای آنها و ارتباط میان دادهها را مشخص میکند. در Entity Framework Core 2.0، توسعهدهنده میتواند کلاسهایی برای نمایش موجودیتهای دامنه تعریف کند و سپس از این مدل برای کار با پایگاه داده استفاده کند. این رویکرد به برنامهنویسان اجازه میدهد بهجای تمرکز مستقیم بر جزئیات جداول، بخش زیادی از عملیات داده را از طریق اشیای C# انجام دهند. طراحی صحیح مدل داده در این مرحله بر نحوه ذخیرهسازی و بازیابی اطلاعات تأثیر میگذارد.

پس از تعریف مدل، Entity Framework Core میتواند بر اساس پیکربندی و روش مورد استفاده، ساختار پایگاه داده را ایجاد یا با آن هماهنگ کند. ارتباط میان کلاسها و دادههای رابطهای نیز باید بهدرستی تعریف شود تا اطلاعات مرتبط به شکل مورد انتظار ذخیره شوند. برای مثال، یک موجودیت سفارش میتواند با مجموعهای از اقلام سفارش ارتباط داشته باشد. شناخت نحوه تعریف این ارتباطات و مدیریت ساختار داده، پایهای برای اجرای Queryهای صحیح و نگهداری سازگار اطلاعات در برنامههای مبتنی بر EF Core است.
Query گرفتن و ذخیره Related Data در Entity Framework Core
در بسیاری از برنامهها، دادهها بهصورت مستقل نگهداری نمیشوند و میان موجودیتها ارتباط وجود دارد. برای مثال، یک مشتری میتواند چند سفارش داشته باشد و هر سفارش نیز شامل چند قلم کالا باشد. Entity Framework Core امکان تعریف و استفاده از این ارتباطات را فراهم میکند و به توسعهدهنده اجازه میدهد دادههای مرتبط را متناسب با نیاز برنامه بازیابی کند. آشنایی با نحوه کار با Navigation Propertyها و روشهای بارگذاری دادههای مرتبط، برای نوشتن Queryهای درست و مدیریت رفتار برنامه اهمیت دارد.

ذخیرهسازی دادههای مرتبط نیز نیازمند شناخت وضعیت موجودیتها و نحوه پیگیری تغییرات توسط DbContext است. وقتی چند موجودیت جدید یا تغییریافته به یکدیگر ارتباط دارند، باید وضعیت آنها به شکلی تنظیم شود که عملیات ذخیرهسازی نتیجه مورد انتظار را ایجاد کند. همچنین انتخاب روش مناسب برای بارگذاری دادههای مرتبط میتواند بر تعداد Queryها و کارایی برنامه اثر بگذارد. درک این مفاهیم به توسعهدهندگان کمک میکند از بارگذاری غیرضروری اطلاعات جلوگیری کنند و تعامل با مدل داده را به شکل مؤثرتری انجام دهند.
استفاده از Entity Framework Core 2.0 در برنامه های .NET
Entity Framework Core 2.0 را میتوان برای مدیریت دادهها در برنامههای مبتنی بر .NET به کار گرفت. این فناوری با فراهم کردن امکان تعریف مدلهای شیگرا و اجرای عملیات متداول پایگاه داده، بخش مهمی از کدهای دسترسی به داده را سازماندهی میکند. توسعهدهنده میتواند با استفاده از DbContext و موجودیتها، اطلاعات را بازیابی کند، تغییر دهد و ذخیره کند. این شیوه بهویژه زمانی مفید است که بخواهیم منطق برنامه را از جزئیات مستقیم اجرای دستورات SQL جدا نگه داریم.
برای استفاده مؤثر از EF Core، باید نحوه پیکربندی Context، تعریف ارتباطات و مدیریت تغییرات موجودیتها را بهدرستی بشناسیم. همچنین انتخاب روش مناسب برای Query گرفتن و ذخیره اطلاعات باید با نیازهای برنامه هماهنگ باشد. در پروژههای واقعی، توجه به کارایی Queryها و جلوگیری از دریافت دادههای غیرضروری نیز اهمیت دارد. از آنجا که Entity Framework Core 2.0 نسخهای قدیمی است، در پروژههای جدید باید سازگاری نسخه مورد نظر با محیط اجرا و نیازهای فنی بررسی شود و در صورت امکان، نسخهای پشتیبانیشده انتخاب شود.
سرفصل مطالب آموزش ویدئویی شروع به کار با Entity Framework Core 2.0
فصل اول: مقدمه ی بسته ی آموزشی
- مقدمه
فصل دوم: معرفی یک ورژن Lightweight و جدید از Entity Framework
- مقدمه و نگاهی اجمالی
- Entity Framework Core چیست؟
- برای ساخت برنامه ها با Entity Framework Core 2.0 و اجرای آنها به چه چیزی نیاز دارید؟
- Entity Framework Core چگونه کار می کند؟
- مسیر از Entity Framework 6 به Entity Framework Core و Entity Framework Core 2.0
- قابلیت های جدید Entity Framework Core 2.0
- نگاهی به Entity Framework Core 2.1 و پس از آن
- جمع بندی و منابع
فصل سوم: ساخت یک Data Model و Database با Entity Framework Core 2.0
- مقدمه و نگاهی اجمالی
- راه اندازی Solution
- اضافه کردن Entity Framework Core با NuGet Package Manager
- ساخت Data Model با Entity Framework Core
- تنظیم کردن Database Provider و Connection String
- کار با Migration در Entity Framework Core
- افزودن اولین Migration
- بررسی اولین Migration
- استفاده از Migration و ساخت Script و یا ساخت مستقیم دیتابیس
- ساخت دوباره ی Model در .NET Core
- افزودن Relationship های One-to-One و Many-to-Many
- استفاده از یک Database موجود و ساخت Model
- جمع بندی و منابع
فصل چهارم: تعامل با Data Model در Entity Framework Core 2.0
- مقدمه و نگاهی اجمالی
- استفاده از Entity Framework Core و خروجی گرفتن از دستوارت SQL
- درج کردن Object های ساده
- استفاده از Batch Command ها در زمان Save کردن داده ها
- Query گرفتن از Object های ساده
- فیلتر کردن داده ها در Query ها
- Update کردن Object های ساده
- Update کردن در Disconnected Scenario
- حذف کردن Object ها
فصل پنجم: Query گرفتن و Save کردن Related Data (داده هایی که با هم Relationship دارند)
- مقدمه و نگاهی اجمالی
- درج Related Data ها
- Eager Loading و Related Data ها
- Project کردن Related Data ها در Query ها
- استفاده از Related Data ها برای فیلتر کردن Object ها
- تغییر دادن Related Data ها
- جمع بندی و منابع
فصل ششم: استفاده از Entity Framework Core 2.0 در Application ها
- مقدمه و نگاهی اجمالی
- Entity Framework Core در Desktop و Device ها
- استفاده از Entity Framework Core در یک برنامه ی WPF
- ساخت برنامه ی WPF
- بررسی Data Access در WPF
- استفاده از Entity Framework Core در یک برنامه ی ASP.NET Core MVC
- اضافه کردن Related Data در برنامه ی MVC
- کدنویسی برای Relationship ها در برنامه ی MVC
- جمع بندی و منابع







