Log4Net:记录 C# 类库项目中所有未处理的异常



我有一个 C# 类库项目,即使我不使用 try catch 块,我也需要捕获类中所有未经处理的异常。 注意:我已经用log4net.config安装了log4net,它可以在调试,信息,错误中手动记录。

你可以帮我吗?

谢谢

我必须做同样的事情,这篇文章很有帮助。 唯一的缺点是最终可能会记录太多异常。由于您说您正在编写一个类库,因此根据将使用您的库的应用程序,您可能不希望捕获应用程序引发的所有异常。要解决此问题,我建议执行以下操作:

AppDomain.CurrentDomain.FirstChanceException += (sender, e) => {
if (e.Exception.TargetSite.DeclaringType.Assembly == Assembly.GetExecutingAssembly())
{
logger.ErrorFormat("Exception Thrown: {0}n{1}", e.Exception.Message, e.Exception.StackTrace);
}
};

这样,您只会从代码中捕获异常。希望这有帮助!

相关内容

最新更新