logo

АСП.НЕТ МВЦ рутирање

У МВЦ-у, рутирање је процес мапирања захтева прегледача на радњу контролера и враћање одговора назад. Свака МВЦ апликација има подразумевано рутирање за подразумевано ХомеЦонтроллер . Можемо подесити прилагођено рутирање за новокреирани контролер.

Тхе РоутеЦонфиг.цс датотека се користи за подешавање рутирања за апликацију. У почетку садржи следећи код.

// РоутеЦонфиг.цс

 using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; using System.Web.Routing; namespace MvcApplicationDemo { public class RouteConfig { public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute('{resource}.axd/{*pathInfo}'); routes.MapRoute( name: 'Default', url: '{controller}/{action}/{id}', defaults: new { controller = 'Home', action = 'Index', id = UrlParameter.Optional } ); } } } 

Према овој датотеци за подешавање, радња индекса кућног контролера ће се третирати као подразумевана. Први пут, када се апликација покрене, производи следећи излаз.

АСП рутирање 1

Ако погледамо адресну траку, она садржи само лоцалхост:52174 . Не постоји контролер и радња је наведена јер МВЦ рутер мапира контролер из РоутеЦонфиг.цс.

Ако експлицитно унесемо имена контролера и радњи у траку за адресу, преусмериће се на исту радњу. Тхе лоцалхост:52174/Хоме/Индек ће произвести исти излаз у претраживач.

АСП рутирање 2

Сада, хајде да направимо нови контролер и конфигуришемо га у датотеку руте. Десни клик на Контролор фолдер и изаберите додај, а затим контролер. Појавиће се прозор. изаберите празан контролер као што смо урадили на снимку екрана.

АСП рутирање 3

Овај контролер има неки изворни код, замените га следећим кодом.

// СтудентсЦонтроллер.цс

 using System.Web.Mvc; namespace MvcApplicationDemo.Controllers { public class StudentsController : Controller { public ContentResult Index() { return Content('This is default student page'); } } } 

Да бисмо конфигурисали овај контролер у датотеци руте, направили смо неке измене у РоутеЦонфиг.цс фајл. Код је дат испод.

// РоутеЦонфиг.цс

 using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; using System.Web.Routing; namespace MvcApplicationDemo { public class RouteConfig { public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute('{resource}.axd/{*pathInfo}'); routes.MapRoute( name: 'Students', url: '{controller}/{action}/{id}', defaults: new { controller = 'Students', action = 'Index', id = UrlParameter.Optional } ); } } } 

Ова апликација производи исти излаз за лоцалхост:52174 и лоцалхост:52174/Студенти/Индекс

Зато што модул руте МВЦ оквира мапира УРЛ претраживача у датотеку РоутеЦонфиг пројекта.

Излаз:

упореди са Јавом

АСП рутирање 4

Ово је исто као горе, чак и да смо експлицитно унели називе контролера и акције.

АСП рутирање 5