در این پست از وبسایت پرووید در رابطه با بررسی Routing در ASP.NET MVC #1 صحبت خواهیم کرد. معماری MVC از معمول ترین و پرکاربردترین معماری های ساخت وب اپلیکیشن ها می باشد.

در این قسمت از این آموزش از وبسایت پرووید در رابطه با Routing در ASP.NET MVC صحبت خواهیم کرد. توصیه می کنیم حتماً بسته ی آموزش ویدئویی مقدماتی ASP.NET MVC را از وبسایت پرووید را ببینید.

در ASP.NET Web Forms Application ها، هر URL باید با یک فایل Aspx متناظر شود. برای مثال، یک URL با آدرس  http://domain/studentsinfo.aspx متناظر با یک فایل با نام studentsinfo.aspx است. این فایل می تواند شامل کد و Markup باشد و طبیعتاً وظیفه ی ارسال یک Response را به Browser را دارد.

آموزش عملی ساخت یک پروژه ASP.NET Core MVC و Entity Framework Core

از شما دعوت می کنیم که از آموزش عملی ساخت یک پروژه ASP.NET Core MVC و Entity Framework Core دیدن کنید.

با استفاده از Routing در ASP.NET می توان این محدودیت که هر URL باید به یک فایل فیزیکی Map شود را حذف کرد. در واقع با استفاده از Routing می توان یک URL Pattern را تعریف کند. این URL Handler باعث Map شدن یک URL به یک Request Handler می شود. این Request Handler می تواند یک کلاس یا یک فایل باشد. در ASP.NET Web Forms Application ها این Request Handler یک فایل Aspx می باشد و در MVC یک Controller و یک Action Method است. برای مثال، آدرس http://domain/students می تواند به فایل http://domain/studentsinfo.aspx در ASP.NET Web Forms Application و به Controller با نام Student و یک Action Method با نام Index نگاشت شود. در رابطه با Routing در بسته ی آموزش ویدئویی مقدماتی ASP.NET MVC از وبسایت پرووید بیشتر صحبت کرده ایم. اگر در ASP.NET MVC تازه کار می باشید، استفاده از این بسته ی آموزشی را به شما توصیه می کنیم.

یک Route چیست؟

به طور ساده یک rR یک روش برای تعریف کردن یک URL Pattern و اطلاعات مربوط به Request Handler است. تمامی Route های پیکربندی شده در یک برنامه در یک جدول با نام RouteTable قرار می گیرند. این جدول توسط Routing Engine برای مشخص کردن Request Handler مناسب برای یک Incoming Request (منظور از Incoming Request یک درخواست ووردی است. در واقع در Request که توسط Browser به سمت سرور ارسال می شود با یک پاسخ یا اصطلاحاً یک Response جواب داده می شود.) استفاده می شود. در تصویر زیر مکانیزم Routing را در MVC به سادگی مشاهده می کنید.

پیکربندی یک Route در MVC

هر MVC Application حداقل باید یک Route را اصطلاحاً Register یا ثبت کند. شاید بدانید که کلمه ی پیکربندی در زبان انگلیسی Configure است. اغلب از همین کلمه استفاده می شود. به طور پیش فرض، فریم ورک MVC یک Route را Register می کند. برای Register کردن یک Route از کلاس RouteConfig.cs که در فولدر App_Start وجود دارد. نحوه ی Register در یک Route در تصویر زیر نشان داده شده است.

همانطور که در تصویر بالا مشاهده می کنید عملیات Register کردن یک Route با استفاده از یک Extension Method به نام MapRoute از کلاس RouteCollection انجام شده است. در رابطه با Extension Method ها در بسته ی آموزش ویدئویی سی شارپ دات نت وبسایت پرووید بیشتر صحبت کرده ایم. همانطور که در تصویر بالا مشاهده می کنید نام Default برای این Route در نظر گرفته شده است. علاوه بر این، URL Pattern به صورت “{controller}/{action}/{id}” تعریف شده است و برای هر کدام از پارامترهای Controller، Action و id مقدار پیش فرض در نظر گرفته شده است. مقادیر پیش فرض برای این سه پارامتر به منظور در نظر گرفته شده است که اگر در url مربوط به Incoming Request هر کدام از این پارامترها مشخص نشده باشد، مقداری برای آنها وجود داشته باشد.

بسته ی آموزش ویدئویی مقدماتی ASP.NET MVC

از شما دعوت می کنیم که از بسته ی آموزش ویدئویی مقدماتی ASP.NET MVC دیدن کنید.

به همین صورت می توان با استفاده از متد MapRoute از کلاس RouteCollection اقدام به Configure کردن Route های دیگری نیز کنید. شاید جالب باشد که بدانید RouteCollection یک Property از کلاس RouteTable است.

در قسمت بعدی از این آموزش در رابطه با بررسی url pattern در mvc صحبت خواهیم کرد.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *