CheckBoxFor و ListBoxFor – جلسه ۳۲

Checkboxfor & ListBoxFor HTML Helper - Session32

در این جلسه از آموزش ASP.NET Core، به معرفی CheckBoxFor و ListBoxFor خواهیم پرداخت و با این دو HTML Helper آشنا خواهیم شد. همانگونه که از نام این هلپرها مشخص میباشد، جهت ایجاد Check Box و List Box در فرم مورد استفاده قرار میگیرند. پس قصد داریم به فرمی که در جلسات گذشته ایجاد نمودیم یک Check Box جهت دادن انتخاب به کاربر برای پاک کرن یا نکرن Text Boxها پس از سابمیت فرم ایجاد کنیم. همچنین با استفاده از List Box امکان انتخاب چندیدن دسته را در زمان ورود اطلاعات بدهیم.

CheckBoxFor

برای اضافه نمودن Check Box اشاره شده به فرم، ابتدا یک خصوصیت از نوع Bool با نام MakeFormClear درون CreateCostViewModel ایجاد میکنیم.

سپس میتوانیم درون CostController و اکشن متد CreateStronglyTypedView برای این خصوصیت، مقدار پیش فرض تعیین نمود.

در ادامه به نمای CreateStronglyTypedView رفته و با استفاده از CheckBoxFor HTML Helper اقدام به ایجاد Check Box مربوطه میکنیم.

ضمنا مانند دیگر HTML Helperها امکان استفاده از Html Attribute نیز میسر میباشد.

متدهای HTTPPOST و HTTPGET

به صورت پیشفرض، اگر برای هر Action Method نوع ارسال داده ذکر نگردد، آن اکشن متد، از متد GET استفاده مینماید. پس میتوان برای اجرای یک اکشن متد با متد GET، بالای آن اکشن متد از [HttpGet] استفاده نمود و یا چیزی ذکر نکرد.

ولی درصورتی که نمای ما دارای یک فرم باشد، و بخواهیم داده فرم را به صورت متد POST به کنترلر ارسال نماییم، میبایست قبل از نام آن Action Method از متد [HttpPost] استفاده نماییم.

به طور کلی در ASP.NET Core MVC برای هر اکشن‌متدی که دارای فرم میباشد میبایست دو اکشن‌متد همنام، یکی با متد Get و دیگری با متد Post ایجاد نمود. در این حالت که ابتدا اکشن ‌متد با متد Get اجرا میگردد. سپس، در زمان سابمیت، فرم اکشن‌متد مربوطه با متد Post فراخوانی و اجرا میگردد.

همچنین در اکشن‌متد با متد Post داده‌های فرم از طریق پارامترهای ورودی آن متد قابل دسترس میباشد. نوع این داده میتواند از نوع Model Directive همان نما باشد.

ListBoxFor

برای اضافه نمودن List Box شرح داده شده، ابتدا یک خصوصیت با نام SelectedCategories از نوع لیست رشته ایی درون CreateCostViewModel ایجاد میکنیم.

سپس، به نمای CreateStronglyTypedView رفته و List Box خود را توسط متد ListBoxFor ایجاد میکنیم.

همانگونه که مشاهده نمودید، List Box از طریق Lambda Expression به خصوصیت ایجاد شده متصل می گردد. ضمنا List Box مانند Drop Down List نیاز به یک لیست از SelectListItem دارد که ما از خصوصیت Categories استفاده نمودیم.

همچنین در قطعه کد کامل مربوط به نمای CreateStronglyTypedView نحوه اضافه نمودن Html Attribute به ListBoxFor را میتوانید مشاهده نمایید.

در صورت نیاز به جزئیات بیشتر، میتوانید ویدئو آموزشی این جلسه را تماشا نمایید. همچنین برای آگاهی از جلسات بعدی این دوره آموزشی، ما را در اینستاگرام، تلگرام، یوتیوب و آپارات دنبال کنید. همچنین لیست کامل جلسات در این قسمت در دسترس شما میباشد.

تماشای ویدیو در یوتیوب ما

دانلود اسلایدهای آموزشی این جلسه از اینجا

برچسب ها

0 0 رای ها
امتیازدهی به مقاله
guest

0 نظرات
بازخورد (Feedback) های اینلاین
مشاهده همه دیدگاه ها
0
افکار شما را دوست داریم، لطفا نظر دهید.x