Помогнете на развитието на сайта, споделяйки статията с приятели!

Въведение в ASP.NET MVC Routing

MVC означава Model-View-Controller. Това е архитектурен модел, който се състои от три логически компонента, тоест модел, изглед и контролер. Тези три компонента са създадени, за да се справят със специфични аспекти на разработка на приложение. За да създават мащабируеми и разширяеми проекти, много компании днес го използват за стандартни за индустрията рамки за уеб разработка. MVC маршрутизирането в ASP.NET е отговорно за съпоставянето на входящите заявки на браузъра към конкретното действие на MVC контролера.Той има таблица за маршрутизиране, чрез която приложението регистрира един или повече шаблони. Така че ще каже на машината за маршрутизиране какво да прави с някоя от заявките, които съответстват на тези модели. Това се случва, когато стартираме приложението ASP.NET MVC.

Синтаксис:

Синтаксисът за MVC маршрутизацията е, трябва да добавим кода по-долу във файла RouteConfig.cs.

"Routes.MapRoute( Име:По подразбиране, url: {controller}/{action}/{id} по подразбиране: нов { контролер=Начало, действие=Индекс, id=UrlParameter.Optional} "

URL шаблоните са останалата част след името на домейна. ASP.NET по подразбиране използва url шаблон като „{controller}/{action}/{id}“, който може да бъде като localhost:2324 /{controller}/{action}/{id}. Всичко, което е след “localhost2324”, ще се счита за име на контролера. Всичко след името на контролера е име на действие и след това неговия параметър, който ще бъде по избор.

Контролерите и действието по подразбиране ще обработват заявката, ако контролерът и действията не са посочени. По подразбиране контролерът ще бъде HomeController и действието ще бъде Index.

Как да създадете ASP.NET MVC маршрут?

  • Трябва да отворим визуално студио и да създадем ново MVC приложение.
  • Отворете неговия файл RouteConfig.cs и трябва да добавите персонализирания маршрут.
  • Когато стартираме приложението MVC, се извиква методът Application_start().
  • Методът Route() е отговорен за извикването на функцията route.config.
  • В папката App_Start имаме файл Route.Config.cs. Можем да дефинираме всички маршрути в този файл. По подразбиране стойността е Home controller - индексен метод.

Нека видим кода по подразбиране по-долу:

"Routes.MapRoute( Име:По подразбиране, url: {controller}/{action}/{id} по подразбиране: нов { контролер=Начало, действие=Индекс, id=UrlParameter.Optional} "
  • Кодът в първи ред съдържа Routes.MapRoute има атрибути като име, url и стойности по подразбиране като действие, име на контролер и идентификатор, който е по избор.

Замисляли ли сте се защо е полезно и се използва?

Всички знаем, че ако търсим конкретния URL адрес, понякога получаваме грешка, известна като 404 страница не е намерена. Това се случва, защото местоположението на физическия файл в ASP.NET трябва да съвпада с URL адреса. Ако в случай, че това не съвпада, ще ви покаже страницата за грешка 404, която не е намерена.

С помощта на маршрутизиране, няма нужда да се файл физически присъства на това конкретно място. Ако файлът не присъства в директорията, браузърът автоматично ще го търси в цялата директория на проекта.

Като използваме маршрутизиране, да предположим, че извикаме само контролера, тогава той по подразбиране ще извика към конкретен индекс, който е свързан с този контролер. Маршрутът ASP.NET MVC по подразбиране е дефиниран във файла Global.asax.

Примери за ASP.NET MVC маршрутизация

Ще стане по-ясно с помощта на пример. нека вземем прост пример.

Пример 1

Да предположим, че искаме да пренасочим към страницата „Относно“ на EDUCBA. За целта трябва да създадем едно MVC приложение и да отворим неговия файл RouteConfig.cs.

Трябва да добавим неговия url, име и контролер в кода.

"routes.MapRoute( име: about, url: educba.com/about-us по подразбиране: new { controller=educba.com, action=about, id=UrlParameter.Optional } ); "
  • Име се дава като „за“, което е име на маршрут.
  • url се предоставя като “educba.com/about-us”, който има своите параметри.
  • Когато стартираме приложението автоматично, то ще извика контролера по подразбиране “EDUCBA”.
  • Ако потребител удари URL адреса: 'localhost:/educba.com/About-us', той ще извика Home контролера Метод за действие „Относно“.

Изход:

Пример 2

Друг пример е за URL адреса, съдържащ датата в него. Да предположим, че искаме да достигнем URL адрес по-долу за днешния блог.

URL: /Blog/2020/01/30/this-is-example-for-MVC

"За това трябва да напишем маршрута, както е дадено по-долу: Routes.MapRoutes(BlogArchive,Blog/{year}/{month}/{day}/{ title} New { controller=Blog, action=List, месец=1, ден=1 }, нов { година=@\d{2}|\d{4}, месец=@\d{1,2}, ден=@\d{1,2}} ); "

Обяснение:

Това е предимно URL адресът на WordPress, който използва ограничения, за да потвърди дали имаме едноцифрена или двуцифрена дата, четирицифрена година или двуцифрен месец.

Действието на контролера ще изглежда така:

  • публичен ActionResult Index(низ година, низ месец, низ ден, заглавие на низ)
  • Която и да е от фигурните скоби в URL адреса се използва за предаване на определеното действие на контролера.

Важни точки на ASP.NET MVC Routing

Сега ще обсъдим някои важни точки относно MVC маршрутизирането в ASP .NET.

  • Маршрутирането играе много важна роля в MVC рамката. Той съпоставя url с физическите файлове или класа или класа на контролера на MVC.
  • URL шаблонът ще започне след името на домейна. Маршрутът ще съдържа URL модел и информация за него.
  • Методът на маршрута се използва за създаване на таблица с маршрути.
  • Маршрутът трябва да бъде регистриран в събитието Application_Start на файла Global.ascx.cs.
  • MVC маршрутизирането е лесно за редактиране или промяна, ако искаме да променим някои части от нашия код.
  • Разделя нашия проект на различни сегменти, което улеснява разработката и разработчиците да работят по него.
  • Това прави нашия проект по-систематичен, по-малко развитие и по-малко разходи за разработка.
  • Тук, в MVC приложението, нашият код вече е разделен на три части, които са модел, изглед и контролер.
  • Така че не се притесняваме за бизнес логиката и потребителския интерфейс.

Заключение

До края на тази статия всички вие трябва да научите как стандартната таблица с маршрути картографира заявките към действията на контролера. В крайна сметка можем да кажем, че моделът на маршрутизиране е отговорен за картографирането на заявките на браузъра, които са входящи към конкретните действия на MVC контролера.

Препоръчани статии

Това е ръководство за ASP.NET MVC маршрутизиране. Тук обсъждаме основната концепция, примери, важни моменти и Как да създадете ASP.NET MVC Routing? Можете също така да разгледате следните статии, за да научите повече -

  1. ASP.NET изображение
  2. ASP.NET MVC ViewBag
  3. ASP.NET MVC удостоверяване
  4. ASP.NET CheckBox

Помогнете на развитието на сайта, споделяйки статията с приятели!

Категория: