Все, что вам нужно сделать, это изменить параметры по умолчанию MapRoute
. Как правило, это то, что вы увидите по умолчанию как ваш Default
маршрут:
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home",
action = "Index",
id = UrlParameter.Optional }); // Parameter defaults
Просто измените свойство controller
и action
на то, что вы хотите использовать по умолчанию. Например, вы можете сделать:
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "AnotherController",
action = "aDifferentAction",
id = UrlParameter.Optional }); // Parameter defaults
Все, что здесь изменилось, это свойства controller
и action
. Теперь, когда вы перейдете к полному имени, оно перейдет к вашему методу AnotherController.aDifferentAction()
вместо метода HomeController.Index()
.
Объяснение
Причина, по которой он по умолчанию равен Home.Index()
, заключается в том, что это первый соответствующий маршрут, когда у вас есть пустые параметры маршрута для controller
и action
. Изменяя эти значения по умолчанию в вызове MapRoute()
, вы указываете маршрутизации, что, если для параметров маршрута ничего нет, перейдите к AnotherController.aDifferentAction()
методу действия.
Пока это первый маршрут, вы должны быть установлены.