此外,连接字符串如何适应?
据推测,dal 从配置中读取这些值是可以的,还是应该从顶部向下传递这些值?
最佳答案
我倾向于对此说是。
将您的自定义配置封装在一个类中然后注入(inject)它有多种原因,包括:
- 可测试性1 - 您的配置可以很容易地模拟出来。任何需要配置的被测类,都不需要您为了让测试工作而使用 App.Configs——您与 Microsoft 的 ConfigurationManager 很好地分离了
- 可测试性2 - 配置本身变得可测试。如果您在配置类中对值进行任何“尝试”(例如,将逗号分隔的值列表转换为数组),您可以简单地单独测试它的行为。
- 可交换性 - 您可以轻松地将配置提供程序替换为代码中的配置,或来自数据库的配置,因为实际配置已被封装。
是的:)
关于.net - 是否应该注入(inject)自定义配置部分依赖项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2333281/