Asp.net mvc 3 全球asax中的MVC重定向路由在混合站点上不工作
我最近将我们的webforms网站重建为一个混合mvc3/webforms网站,新的代码被mvc取代。过去,全局asax文件的应用程序错误方法中有一些代码将用户重定向到404Asp.net mvc 3 全球asax中的MVC重定向路由在混合站点上不工作,asp.net-mvc-3,Asp.net Mvc 3,我最近将我们的webforms网站重建为一个混合mvc3/webforms网站,新的代码被mvc取代。过去,全局asax文件的应用程序错误方法中有一些代码将用户重定向到404 LifespeakExceptions.Log404(); HttpContext.Current.Server.Transfer("~/404.aspx"); 但是,当我尝试用路由替换它时,它似乎找不到它-例如,我在registermvc3routes文件中尝试了这个 routes.MapRoute( "404", /
LifespeakExceptions.Log404();
HttpContext.Current.Server.Transfer("~/404.aspx");
但是,当我尝试用路由替换它时,它似乎找不到它-例如,我在registermvc3routes文件中尝试了这个
routes.MapRoute(
"404", // Route name
"pagenotfound",
new { controller = "Utilities", action = "Error404Page" }
);
我在全球asax中添加了这个
LifespeakExceptions.Log404();
Response.RedirectToRoute("404");
然而,它似乎找不到这条路线,即使我知道它存在——直接调用它是正确的。这可能是因为它是一个混合站点吗?您是否有一个名为
UtilitiesController
的控制器,该控制器具有一个名为Error404Page()
的方法,可以通过GET
访问该方法?是的--我确保该操作方法工作正常--将其键入正确解析的url栏中。我也尝试过用网站的主页替换路径和操作,看看是否存在错误操作方法特有的问题,但这也没有解决