在异常构造函数中记录错误是一种好习惯吗?

Ahm*_*mad 3 c# logging exception

我正在使用C#开发Web应用程序,并且我有一个特殊的异常类型,我需要从发生的事件中获取完整的日志,当然,我将处理该异常以向用户或其他人显示特殊消息。

问题是,在异常的构造函数中编写日志记录代码是一种好习惯吗?我之所以这样问,是因为我之前从未见过类似的东西。

提前致谢

Mat*_*zer 6

一个简短而良好的答案应该是:不,您不应该这样,因为您要在关注点分离的情况下开发代码:异常处理不是日志记录,因此,日志记录不能成为构造异常的一部分

如果您的代码未处理该异常,则可以使用诸如AppDomain.UnhandledExceptionevent 的最后机会异常处理程序并将其记录在此处。