asp.net - 在我的网页中避免 try/catch hell

标签 asp.net c#-4.0 error-handling

我正在编写一个 ASP.NET 网站,这对我来说是一个新框架。我发现我的代码隐藏的每个方法中都有一个 try/catch block 。所有这些 try/catch block 所做的就是捕获异常,然后向用户弹出一条错误消息。 ASP.NET 中没有某种全局错误处理程序吗?值得注意的是,我的错误处理是在控制 (ASCX) 页面内进行的,我想要一种方法来简单地让每个 ASCX 处理自己的错误,而不是将所有错误处理强制到单个母版页或重定向...


感谢以下建议。我确实尝试过 Page_Error,因为它似乎是一个积极的选择。我运行了一个测试,我的异常现在通过 Page_Error 运行,但是事情不太正常......我在我的 Page_Error 结束时使用'Content.ClearError()',但是,客户端浏览器仍然以未处理的方式结束PageRequestManagerServerErrorException。有什么建议吗?如果有帮助,我正在使用 Telerik 并尝试在发生错误时弹出一个 radalert ...

最佳答案

您可以在页面级别 实现Page_Error 事件处理程序。这听起来非常适合您的要求。

否则,在应用程序级别的全局范围内,您可以尝试 Global.asax 中的 Application_Error 事件处理程序。

另见 http://msdn.microsoft.com/en-us/library/aa479319.aspx其中包含大量有关 asp.net 中错误处理的信息。

关于asp.net - 在我的网页中避免 try/catch hell,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2945925/

相关文章:

asp.net - 当前上下文中不存在名称 'Resources'

javascript - ASP.NET:使用 Ajax (JSON) 从 View 到 Controller POST List<Object>/Model

带有 css 的 jQuery 动画无法正常工作

algorithm - c#中的线性增加算法

c# - ContinueWith 主线程上的任务

blackberry - 黑莓错误: Jar Command Failed

c# - 使用BackGroundWorker的错误处理条件失败

c# - 在 Gridview 中获取 TemplateFields 的值

c# - 如何使用c#在Excel中读取数据列标题和每个单元格的数据

r - #R#二进制运算符#xts对象的非数字参数*整数