کنترلرها (Controllers) در asp.net mvc

مهمترین وظیفه Controller در MVC پاسخ گویی به درخواست های کاربر می باشد. هر Controller شامل تعدادی متد می باشد که به آنها Action گفته می شود و به وسیله Actionها پاسخگویی به درخواست های کاربر انجام می شود. در ASP.NET MVC تمام Controllerها کلاس هایی با پسوند Controller می باشند.

نحوه استفاده

ابتدا یک پروژه ASP.NET MVC از نوع Empty ایجاد نمایید.

ساخت پروژه خالی در mvc

پس از ساخت پروژه روی پوشه Controllers کلیک راست کرده و از منو Add گزینه Controller را انتخاب نمایید.

ساخت کنترلر - مرحله 1

در لیست باز شده، گزینه MVC5 Controller Empty را انتخاب کرده و روی دکمه Add کلیک کنید.

ساخت کنترلر-مرحله 2

نام Controller را Home تعیین کرده و دقت داشته باشید که حتما پسوند Controller آن وجود داشته باشد. پس از تعیین نام روی دکمه Add کلیک کنید.

ساخت کنترلر - مرحله 3

بدین ترتیب Controller مورد نظر به پروژه اضافه می گردد.

ساخت کنترلر - مرحله 4

بصورت پیش فرض هنگام ایجاد Controller یک اکشن به نام Index نیز برای آن ایجاد می گردد که Action پیش فرض و اجرایی Controller می باشد.

تمام Controllerها از کلاس Controller ارث بری دارند که این کلاس در System.Web.Mvc قرار دارد.

View

در ASP.NET MVC به ازای هر Controller یک پوشه در پوشه Views با نام Controller مورد نظر ایجاد می شود و به ازای هر Action می بایست یک View ایجاد نمایید که این View ساخته شده نیز به پوشه Controller مورد نظر در بخش Views اضافه می گردد.

برای ساخت View، در پنجره کد نویسی روی نام Action که در این مثال Index می باشد کلیک راست کرده و گزینه Add View را انتخاب نمایید.

ساخت کنترلر - مرحله 5

در پنجره باز شده بدون اعمال تغییرات، روی دکمه Add کلیک کنید.

ساخت view

بدین ترتیب View مورد نظر ایجاد می گردد. پسوند View ها .cshtml می باشد.

نمایش view ساخته شده

متن داخل تگ h3 را به عبارت دلخواه تغییر داده و با فشردن کلید F5 پروژه را اجرا نمایید.

اجرا پروژه

همانطور که مشاهده می کنید برای صفحات ایجاد شده یک تمپلیت با استفاده از Bootstrap بصورت اتوماتیک ایجاد می شود تا صفحات شکل ظاهری بهتری داشته باشند. در مورد تمپلیت ها در دروس آینده به تفصیل صحبت خواهیم کرد.

اگر به نوار آدرس دقت کنید، آدرس نمایش داده شده به شکل زیر می باشد.

http://localhost:61866/Home/Index

در این آدرس عبارت http://localhost:61866 بیانگر host و پورت وبسایت شما می باشد. هنگامی که یک پروژه را توسط VisualStudio ایجاد می نمایید، یک هاست مجازی توسط IIS در یکی از پورت های آزاد سیستم ایجاد می گردد تا پروژه تحت وب شما قابل اجرا باشد. هنگامی که سایت خود را در یک هاست واقعی در فضای اینترنت منتتشر کنید، آدرس آن مشابه زیر خواهد بود.

https://benoacademy.com/Home/Index

قسمت مهم دیگری که باید توجه داشته باشید عبارت بعد از نام هاست می باشد:

/Home/Index

و به این معنی است که درحال حاضر در کنترلر Home و اکشن Index قرار دارید. تمامی آدرس ها و صفحات موجود در پروژه های ASP.NET MVC به این شکل آدرس دهی می شوند که ابتدا نام کنترلر و سپس نام اکشن ذکر می گردد.