Справка по.NET MVC URL Routing
Я пытаюсь настроить ErrorController в своем приложении.NET MVC, и в настоящее время я не могу выполнить какие-либо действия на контроллере, поэтому я полагаю, что это может быть связано с тем, что мне нужно зарегистрировать маршрут URL в global.asax.
Ошибка контроллера заключается в следующем:
public class ErrorController: Controller
{
/*Default Redirect Error Page*/
public ActionResult Index()
{
return View();
}
/*Generic Error Page*/
public ActionResult Generic()
{
return View();
}
/*Status Code: 400*/
public ActionResult NotFound()
{
return View();
}
}
Я хотел бы иметь возможность вызывать действия выше по следующим URL соответственно.
~ / Error /
~ / Error / Generic
~ / Error / NotFound
Я считаю, что в файле Global.asax мне нужно зарегистрировать эти маршруты, используя что-то вроде следующего:
routes.Add(new Route("error/{action}", new MvcRouteHandler())){controller = "Error", action = "";
Как мне добавить / указать правильный обработчик маршрута для этого?
1 ответ
Я считаю, что URL-адрес по умолчанию, предоставленный в global.asax, будет работать для вашего URL-адреса, но если вам нужен конкретный URL-адрес, тогда перейдите к:
routes.MapRoute(
"Error", // Route name
"error/{action}", // URL without parameters
new { controller = "Error", action = "Index" }, // Parameter defaults
);
и если вы хотите параметры:
routes.MapRoute(
"Error", // Route name
"error/{action}/{param}", // URL with parameters
new { controller = "Error", action = "Index", param = UrlParameter.Optional }, // Parameter defaults
);