使用路由的ASP.NET 4 Web窗体-出现错误时未调用Application_Error

本文关键字:错误 调用 Error Application -出 窗体 路由 ASP NET Web | 更新日期: 2023-09-27 18:28:53

我有一个使用URL路由的ASP.NET 4 Web Forms应用程序。我在Application_Start中指定了以下路线:

routes.MapPageRoute("时间表"、"时间表"answers"~/Schedul.aspx");

很简单。我只想重新路由"http://example.com/Schedule"到"http://example.com/Schedule.aspx".工作得很好。但是,如果我的应用程序在使用路由时抛出异常,Global.asax中的application_Error方法将不会执行。我会看到通用的.net错误消息。如果我在使用完整的"Schedule.aspx"时抛出相同的异常,它会按预期工作。有什么想法吗?

使用路由的ASP.NET 4 Web窗体-出现错误时未调用Application_Error

来源:http://msdn.microsoft.com/en-us/library/24395wz3.aspx

在Global.asax文件中定义的错误处理程序将只捕获ASP.NET运行时处理请求期间发生的错误。例如,如果用户请求的.aspx文件没有出现在您的应用程序中,它将捕获错误但是,如果用户请求一个不存在的.htm文件,它不会捕获错误。对于非ASP.NET错误,可以在Internet信息服务(IIS)中创建自定义处理程序。对于服务器级别的错误,也不会调用自定义处理程序

我认为粗体文本是它没有按预期工作的原因。对不起,我没有一个好的解决方案。