gpt4 book ai didi

c# - HttpModule中的OnError会取代任何现有的现有错误处理吗?

转载 作者:行者123 更新时间:2023-12-03 07:40:27 26 4
gpt4 key购买 nike

我的任务是创建一种全局错误处理解决方案,因此我正在创建一个HttpModule放入现有的ASP.NET解决方案中。有时,这些现有的Web应用程序将具有自己的错误处理(尝试/捕获),它们可能会做一些特定的事情。

问题当应用程序遇到异常时,我的OnError中的HttpModule是否会最后触发,因为它比应用程序内的特定try/catch具有更多的全局作用域?它会持续发射一次吗? OnError是否会捕获每个已处理和未处理的应用程序异常?当我说“已处理”时,我的意思是如果我的应用程序中某处代码的某个部分中的错误已“得到处理”,它会在OnError中结束吗?

最佳答案

您的HttpModule将仅获得应用程序未捕获的那些异常,clearly stated in the documentation也是如此

如果引发异常的代码在try...catch块内,则没有异常要传播到全局错误处理程序。

如果处理该异常并希望抑制默认的ASP.NET错误消息,则可以使用 ClearError 方法来实现。

如果您确实想了解所有异常,则可以使用FirstChanceException上的 AppDomain 事件在捕获到异常时直接获取通知。但是,您可能不会比预期的方式捕获更多的异常-在框架内引发了许多异常并优雅地对其进行了处理。

关于c# - HttpModule中的OnError会取代任何现有的现有错误处理吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20003880/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com