我在global.asax
protected void Application_Error(object sender, EventArgs e)
{
// ...
var routeData = new RouteData();
routeData.Values.Add("controller", "Home");
routeData.Values.Add("action", "Error");
IController controller = new Controllers.HomeController();
controller.Execute(new RequestContext(new HttpContextWrapper(Context), routeData));
}
如何向Action方法/ RouteData添加参数?我想向用户显示异常消息。
答案 0 :(得分:2)
我已经明白了,
routeData.Values.Add("message", exception.Message);
并在行动中抓住该参数
public ActionResult Index(string message)
答案 1 :(得分:1)
要显示自定义错误页面,您需要更改web.config。
<system.web>
<customErrors mode="On" defaultRedirect="~/Error">
<error redirect="~/Error/NotFound" statusCode="404" />
</customErrors>
</system.web>
您可以为不同的状态代码创建错误页面。
确保您有控制器和操作方法来返回视图。
在Application_error MVC之后,它将自动重定向到web.config中描述的同一页面。
有关详细信息,请参阅此link。