当前位置:  开发笔记 > 后端 > 正文

如何在ASP.NET中打破未处理的异常?

如何解决《如何在ASP.NET中打破未处理的异常?》经验,为你挑选了1个好方法。

在Visual Studio中调试应用程序时,有两个用于中断异常的选项.抛出异常后立即中断,仅在未捕获异常时中断.这在开发桌面应用程序时工作正常.但是,在开发ASP.NET应用程序时,所有异常最终都会被IIS中的代码捕获.是否可以禁用此行为,以便在我的ASP.Net应用程序代码无法捕获异常时调试器中断?


编辑:

为了清楚起见,我不想在抛出异常时中断,因为很多时候我的代码处理得很好,而且我不想停止每个异常.我只想停止我的代码未处理的异常.


编辑:

这似乎不是Visual Studio 2008中的问题.在Visual Studio 2003中,所有异常都被视为用户处理,因为ASP.NET运行时捕获了所有异常,以免降低Web服务器进程.似乎在Visual Studio 2008中,在检查用户未处理的异常时,不计算此类型的异常捕获.



1> Corbin March..:

在Debug-> Exceptions下,检查Common Language Runtime Exceptions的"Thrown"列(至少).检查'Thrown'以了解您感兴趣的其他例外情况.

现在,如果附加了调试器(活动调试或"附加到进程"),您的ASP.NET应用程序将破坏CLR异常(或您选择的任何其他异常).

[编辑]

如果你想打破在未处理的异常,调试-下>例外,取消对所有的异常类型"时抛出",并确保"用户未处理"被选中您感兴趣的例外.

异常接口

然后,如果附加了调试器,那么无论运行时最终会捕获异常,您的ASP.NET应用程序都会在您选择的每个用户未处理的异常中断.样品:

调试器破坏用户未处理的异常


值得一提的是,要显示"User-unhandled"列,您需要在Options> Debugging> General中启用"Just My Code".
在Visual Studio 2005中,"例外"菜单选项不会出现在"调试"下.您可以自定义菜单以使其可见,或按CTRL + ALT + E查看此菜单
推荐阅读
Gbom2402851125
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有