یکی از الگوهای بسیار کاربردی برای یادگیری و یا صرفه جویی در وقت برنامه نویسان CRUD ها هستند. از طریق ایجاد یک CRUD ، دیگر برنامه نویسان میتوانند حداقل وضعیت یک Insert/Update/Delete/Select ساده را روشن شده طلقی کنند و به آسانی از آن استفاده کنند. برای ایجاد یک CRUD روشهای زیادی وجود دارد و یکی از ساده ترین آنها اختیار دادن به Visual Studio و ایجاد 80% اجزای پروژه توسط قابلیتی به نام Scaffolding می باشد .
بسمه تعالی
بررسی Scaffolding و Entity Framework در پروژه های ASP.NET MVC Core
یکی از الگوهای بسیار کاربردی برای یادگیری و یا صرفه جویی در وقت برنامه نویسان CRUD ها هستند. از طریق ایجاد یک CRUD ، دیگر برنامه نویسان میتوانند حداقل وضعیت یک Insert/Update/Delete/Select ساده را روشن شده طلقی کنند و به آسانی از آن استفاده کنند. برای ایجاد یک CRUD روشهای زیادی وجود دارد و یکی از ساده ترین آنها اختیار دادن به Visual Studio و ایجاد 80% اجزای پروژه توسط قابلیتی به نام Scaffolding می باشد .
در این دست پروژه ها کافی است شما وضعیت Model و نام DataBase Server و ... را مشخص کنید و اجازه دهید باقی مراحل توسط خود Visual Studio انجام شود . در این مقاله قصد داریم از قابلیت Scaffolding در MVC Core استفاده کنیم.
خوب در ابتدا یک پروژه جدید ایجاد میکنیم.
در مرحله بعد نوع پروژه را تایین کنید .
خوب پس از ایجاد پروژه باید تغییراتی در آن داشته باشیم ، ولی قبل از آن اجازه دهید DataBase را ایجاد کنیم تا تصمیم گیریهای Model و ... هم ساده تر شود.
برای ایجاد دیتابیس یک Scriptبه نام StudentQuery به همراه مقاله درون فولدر Sourceوجود دارد که باید آنرا روی Server اجرا ودیتابیس را ایجاد نمایید.
خوب حالا دیتابیس با 3 رکورد فرضی برای ما ایجاد گردیده است .
مرحله بعدی تغییرات appsettings.Json می باشد . در این فایل Connection String سیستم را قرار خواهیم داد. در مقالات Core 1 به اندازه کافی درباره این فایل و تنظیماتش صحبت شده ، لذا در اینجا فقط یک تصویر از آن قرار میدهم و ضمنن در سورس پروژه هم موجود است .
برای ایجاد Model باید مطابق جدولی که در دیتابیس داشتیم ، یک کلاس ایجاد کنیم . یک فولدر Model در پروژه ایجاد کنید و یک کلاس به نام StudentMasters درون آن ایجاد نمایید.
خوب حالا باید DbContext ایجاد گردد . برای اینکار باز یک کلاس جدید در فولدر Model ایجاد میکنیم و نام آنرا StudentMastersAppContext میگذاریم.
خوب حالا باید همه چیز را به دست Scafollding بسپاریم و اجازه بدهیم Controller و View را برای ما ایجاد نماید . برای اینک کار روی فولدر Controller یک کلیک راست کنید و مطابق تصویر زیر از منوی ADD آیتم Scaffolding را انتخاب نمایید.
مرحله بعدی انتخاب نوع Scaffolding است که مطابق زیر عمل کنید .
خوب حالا یک صفحه مشابه زیر خواهیم داشت که باید Model و Context را به آن معرفی کنیم.
و با زدن Add ، View ها و Controller لازمه ایجاد خواهد شد . با Run کردن پروژه وضعیت زیر را خواهم داشت .
حال با زدن Create میتوانم یک رکورد جدید ایجاد نمایم و .....
اگر به بدنه Controller نگاهی بیندازیم ، خواهیم دید که همه متدها را به درستی ایجاد و میتوان از آنها استفاده نمود.
ضمنن کلیه Viewها بر اساس Tag Helperها ایجاد نموده است که در تصویر زیر مشهود است .
برای دسترسی بهتر به لیست دانشجویان در Layout یک منوی اضافی به شکل زیر ایجاد میکنیم.
حال با کلیک بر روی این لینک به لیست دانشجویان دسترسی خواهیم داشت.
دانلود سورس پروژه