【发布时间】:2012-03-22 13:14:05
【问题描述】:
我有一个 C# 类来帮助我记录错误 (ErrorClass)。
- 该类有 3 个方法。将错误记录到:文件系统、Windows 事件、 电子邮件。
- 3 种方法中有 2 种需要设置,例如“发送电子邮件”或“目录路径”。
- 设置存储在注册表中
- 我使用依赖注入在
ErrorClass中实例化RegistryClass.
这就是我在注册表类中实例化 ErrorHandle 类的方式
ErrorHandle _ErrorHandle = new ErrorHandle();
下面是我如何在 ErrorHandle 类中实例化注册表类
RegistryTools _GetRegistry = new RegistryTools();
我有一个类可以帮助我从注册表中检索值 (RegistryClass)
- 注册表类需要处理错误
- 我使用依赖注入在
RegistryClass中实例化errorClass
当我在两个类中都使用依赖注入时,当出现错误时会创建一个 Endless LOOP。
处理这种情况的建议方法或最佳实践是什么:
- 我应该访问
ErrorClass中的注册表吗? - 我不应该错误处理
RegistryClass吗? - 我是否应该为
RegistryClass?
【问题讨论】:
-
“最佳实践”是让您的记录器尽可能少地依赖外部服务。毕竟,您希望 yo logger 随时可用。我不知何故怀疑注册表是日志记录的重要依赖项 - 至少,您应该考虑回退解决方案
-
你是对的。我修改了问题的标题
标签: c# .net error-handling