我有一个第三方API库,其中包含一组请求函数。通过订阅活动获得回复。
如果在我的事件处理程序中抛出异常 - 第三方库会捕获它并在之后不执行任何操作。如果我的代码有任何问题,这不会让我知道。
有没有办法在第三方库之前捕获我的异常?
我考虑过为事件处理程序编写包装器,但它似乎不是一个好的解决方案。
订阅AppDomain.FirstChanceException
不会产生任何影响。
答案 0 :(得分:1)
有没有办法在第三方库之前捕获我的异常?
HandlerFunction()
{
try
{
/* place handler body here */
}
catch(Exception e)
{
/* you may store/log the exception object here */
}
}
ThirdPartyObject.Event += HandlerFunction;
在catch子句中,您还可以将异常对象添加到全局错误日志中,以便跟踪它。
此外,您可以在exception子句中放置一个断点来调试错误。