Я знаю, что это общий подход:
routes.MapRoute
(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
Но если я попробую так:
routes.MapRoute
(
name: "Defaults",
url: "Home/Index/1"
);
Это не даст никаких ошибок при запуске проекта. У меня есть Controller = Home
Action = Index()
в моем HomeController
, но почему он выдает ошибку, когда я набираю это http://localhost:1702/Home/Index/1
в своем браузере?
Ошибка. Совпадающий маршрут не содержит обязательного значения маршрута «контроллер».
Какая часть является обязательной в маршрутизации? Другой вопрос: зачем нам Route Name
?? Если я даю name=""
, он работает нормально, даже если существует более одного маршрута, такого как name=""
http://localhost:1702
, идет ли это кhome/index/1
? - person Ric   schedule 30.08.2016