مشخصات مقاله
آموزش رویکرد database first در EF-آموزش entity framework
کلیه حقوق مادی و معنوی این مقاله متعلق به آموزشگاه تحلیل داده می باشد و هر گونه استفاده غیر قانونی از آن پیگرد قانونی دارد.
رویکرد Database First
در این مقاله خواهیم فهمید Entity Framework (EF) چیست و چطور آن را در برنامه هایمان پیاده سازی کنیم؟ رویکردهای مختلف EF عبارتند از:
1. رویکرد اول پایگاه داده (Database First)
2. رویکرد اول مدل (Model First)
3. رویکرد اول کد (Code First)
Entity Framework چیست؟
EF یک فریم ورک و محصولی از مایکروسافت، برای دسترسی به داده است و کمک می کند فاصله بین ساختارهای داده و اشیاء در برنامه ها از بین برود.
EF به صورت خودکار قادر است:
a. موجودیت های شی strongly-typed که بتوانند به بیش از نگاشت 1 به 1 سفارشی شوند، تولید کنند.
b. کد نگاشت(mapping/plumbing code) را تولید کند.
c. کوئری های LINQ را به کوئری های پایگاه داده ترجمه کند.
d. Materialize کردن اشیاء هنگام فراخوانی از محل ذخیره داده ها.
e. تغییراتی را که منجر به update و insert می شوند را پیگیری کند.
در تصویر فوق رویکردهای مختلف EF را به تفکیک مشاهده می کنید. ابتدا به رویکرد اول خواهیم پرداخت.
رویکرد Database first
همانطور که از نام آن مشخص است، قابلیت این رویکرد این است که پایگاه داده وجود دارد و ما entity model را به برنامه اضافه می کنیم و با استفاده از آن مدل به اشیاء و داده های پایگاه داده دسترسی خواهیم داشت.
رویکرد Database first در برنامه به صورت زیر است:
1. Visual Studio را باز می کنیم.
2. گزینه File و سپس New Project را انتخاب می کنیم.
3. انتخاب قالب C#، سپس Console Application و نامگذاری پروژه به نام DatabaseFirstApproach.
4. کلیک بر روی OK
5. صفحه زیر را مشاهده خواهید کرد:
6. حالا باید پکیج Entity Framework Nuget را اضافه می کنیم.
7. بر روی پروژه راست کلیک کرده و Manage NuGet packages را انتخاب کنید.
8. پنجره ای مشابه تصویر زیر خواهید دید.
در صفحه فوق پکیج های نصب شده بر روی پروژه را خواهید دید و یا اینکه آن را به صورت آنلاین جستجو کرده و بر روی Installed کلیک کنید.
بر روی Accept کلیک کنید. صفحه نصب پایین را مشاهده می کنید:
همانطور که در تصویر زیر می بینید، پس از تکمیل نصب، می توانید پکیج نصب شده را در سمت چپ، با انتخاب گزینه ی "پکیج های نصب شده" مشاهده کنید:
بر روی close کلیک کنید.
9. اسکریپت پایگاه داده به همراه این Demo پیوست خواهد شد. کافیست آنرا دانلود کرده، پایگاه داده را ایجاد کنید و اسکریپت را برای آن اجرا کنید.
10.حالا باید Entity Data Model را به برنامه مان اضافه کنیم: بر روی پروژه راست کلیک کرده و Add New Item را انتخاب کنید.
11. صفحه بعد را مشاهده می کنید.
در سمت چپ Data، سپس ADO.NET Entity Data Model را انتخاب می کنیم و مدل را نامگذاری می کنیم. سپس بر روی Add کلیک می کنیم.
12.پس از کلیک بر روی Add یک پنجره دیگر باز می شود.
از آنجا که باید مدل را از روی پایگاه داده تولید کنیم، گزینه اول را انتخاب کرده و بر روی Next کلیک می کنیم.
در قدم بعدی Entity Data Model Wizard برای انتخاب پایگاه داده باز می شود.
بر روی New Connection کلیک می کنیم.
نام سرور و پایگاه داده را انتخاب کنید و برای بررسی بر روی Test Connection کلیک کنید.
اتصال با موفقیت برقرار شده است.
13.سپس بر روی دکمه OK کلیک کنید، صفحه زیر را مشاهده می کنید:
همانطور که در صفحه فوق مشاهده می کنید، نام پایگاه داده و نام connection string در فایل App.config را انتخاب می کنیم. بر روی Next کلیک کنید.
14.در صفحه بعد باید اشیاء پایگاه داده یا تنظیمات جدول را به صورت زیر انتخاب کنیم.
15.در پنجره فوق تمام اشیاء پایگاه داده و دو جدول زیر را انتخاب کرده ایم:
- Department
- Employee.
سپس بر روی دکمه Finish کلیک کرده و صفحه زیر را مشاهده می کنیم:
در صفحه فوق فایل Entity Data Model را با دو موجودیت اضافه شده به نام های Department و Employee مشاهده می کنیم. در سمت راست در solution explorer، در ابتدا مراجع Entity Framework و SQL Server و سپس فایل DB Context تولید شده را به همراه دو شی پایگاه داده به صورت Department.cs و Employee.cs مشاهده خواهیم کرد.
16.در صفحه زیر فایل موجودیت های تولید شده را با ارث بری از DbContext مشاهده می کنید.
17. حالا با استفاده از اشیاء Department و Employee بوسیله DBContext به داده ها دسترسی خواهیم داشت.
18.فایل Program.cs را باز می کنیم و منطق دسترسی به داده را در آن می نویسیم:
زمانیکه یک شی از کلاس context ایجاد کنیم، با استفاده از (.) به اشیاء دسترسی خواهیم داشت و می توانیم لیستی از اشیاء پایگاه داده را ببینیم.
19. به شکل زیر به خصوصیات اشیاء پایگاه داده دسترسی خواهیم داشت:
صفحه فوق دسترسی اشیاء به داده ها را در خط فرمان نشان می دهد. حالا تغییرات را ذخیره کنید و بر روی RUN کلیک می کنیم.
خروجی زیر را مشاهده می کنید:
بسیار عالی! اولین رویکرد Entity Framework، یعنی رویکرد Database first را با موفقیت ایجاد کردیم.