除了使用try ... catch块进行异常处理和进一步记录之外,是否存在任何可能性/代码。 我们正在开发一个带有几个屏幕的Web应用程序。客户要求我们不要在每个函数/方法中放置try ... catch块来处理错误。请建议。
谢谢
答案 0 :(得分:2)
我们正在开发一个带有几个屏幕的Web应用程序
虽然您的客户端要求对我没有多大意义,但您可以使用 global.asax 中的Application_Error
事件来处理未处理的异常
void Application_Error(object sender, EventArgs e)
{
//Your logging code goes here
}
How to: Handle Application-Level Errors
此代码示例演示如何在中创建错误处理程序 Global.asax文件将捕获所有未处理的ASP.NET错误 处理请求 - 换句话说,所有错误都没有 使用Try / Catch块或页面级错误处理程序捕获。在里面 例如,处理程序将控制权转移到名为的通用错误页面 GenericErrorPage.aspx,它解释错误并显示一个 适当的消息。
作为桌面应用程序(如WinForms或Window Services)的附加说明,您可以使用AppDomain.CurrentDomain.UnhandledException或Application.ThreadException等。
答案 1 :(得分:1)
您可以在global.asax中使用Application_Error,此方法处理应用程序中所有页面的错误。
对于特定页面,例如default.aspx,您可以实现Page_Error