目前,我的团队正在开发一个使用“流程”模型的项目。每个过程由“步骤”组成,这些步骤可以是“IValidationStep”或“ITransactionStep”。在每种情况下,逻辑都是不同的(事务步骤可以回滚)。
这些步骤将通过Unity解决。
在我们的项目中,我们将使用可在Unity配置中替换的步骤来构建通用验证和事务逻辑。
我们目前正在讨论是否要分离容器(每个流程的容器,包括验证流程和事务流程),或者只是将它们全部放在一个容器中。
我想就分离容器与一个容器达成诚实意见。请记住,我们的项目应该通过单元测试完全测试。
答案 0 :(得分:2)
如果您的代码必须是完全可测试的,那么您的进程可能会通过依赖注入获得所有依赖项(步骤)。在这种情况下,流程将完全独立于Unity,并且不会引用UnityContainer
。唯一引用UnityContainer
的代码将是逻辑实例化并执行您的进程。这导致我使用命名类型注册单UnityContainer
。
答案 1 :(得分:0)
为什么不从一个容器开始并在需要时重构为多个,有时你只需要开始看看你知道正确的方法...