У меня есть действие под названием Контакт в домашнем контроллере
<mysite>/Home/Contact
Я хочу получить возможность набрать <mysite>/Contact
, чтобы получить тот же результат, что и <mysite>/Home/Contact
Можно ли делать с маршрутами mvc 3.0 или RouteMagic?
В настоящее время я пытаюсь добиться этого, но безуспешно:
Пользовательские маршруты:
routes.MapRoute(
"Contact", // Route name
"Contact", // URL with parameters
new { controller = "Home", action = "Contact", id = UrlParameter.Optional } // Parameter defaults
);
RouteMagic:
var route = routes.MapRoute("new", "Contact");
routes.Redirect(r => r.MapRoute("old", "Home/Contact"))
.To(route);
Обновление
Хорошо, сначала нужно определить пользовательские маршруты, теперь они работают (в случае пользовательских маршрутов), но появился новый вопрос why route magic returning error
:
Server Error in '/' Application.
Value cannot be null or empty.
Parameter name: controllerName