【发布时间】:2013-01-15 07:13:37
【问题描述】:
我想在我的 global.asax 中使用自定义路由和 response.redirecttoroute,但它不起作用。我的 RouteConfig 中有以下内容:
routes.MapRoute(
name: "Error",
url: "Error/{action}/{excep}",
defaults: new { action = "Index", excep = UrlParameter.Optional }
);
在我的 global.asax 中,我执行以下操作:
Response.RedirectToRoute("Error", new { action="Index", excep=ex.Message });
在我的 ErrorController 我有:
public ActionResult Index(string excep)
{
ViewBag.Exception = excep;
return View();
}
在我的错误索引视图中,我调用 ViewBag.Exception 来显示异常。
当我使用时:
Response.Redirect("/Error/Index/0/"+ex.Message, true);
并在我的控制器中使用它:
public ActionResult Index(int? id,string excep)
{
ViewBag.Exception = excep;
return View();
}
它有效,但这是默认路由,不是我想要的。为什么它适用于重定向而不适用于redirecttoroute?
【问题讨论】:
标签: c# asp.net-mvc-4 global-asax custom-routes