Asp.net-Mvc-2
我可以從 global.asax 重定向到控制器操作嗎?
當使用者上傳超過限制的文件時,我試圖顯示錯誤頁面(請參閱擷取“超出最大請求長度”)
在 global.asax 中,我想重定向到控制器操作,所以像這樣但它不起作用?:
private void Application_Error(object sender, EventArgs e) { if (GlobalHelper.IsMaxRequestExceededEexception(this.Server.GetLastError())) { this.Server.ClearError(); return RedirectToAction("Home","Errorpage"); } }
試試這樣:
protected void Application_Error() { var exception = Server.GetLastError(); // TODO: Log the exception or something Response.Clear(); Server.ClearError(); var routeData = new RouteData(); routeData.Values["controller"] = "Home"; routeData.Values["action"] = "ErrorPage"; Response.StatusCode = 500; IController controller = new HomeController(); var rc = new RequestContext(new HttpContextWrapper(Context), routeData); controller.Execute(rc); }