我的应用程序中将包含以下组件
- 数据访问
- DataAccess.Test
- 商业
- Business.Test
- 应用
我希望使用Castle Windsor作为IoC来粘合各层,但我对胶合的设计有点不确定.
我的问题是谁应该负责将物品注册到温莎?我有几个想法;
- 每个层都可以注册自己的对象.为了测试BL,测试平台可以为DAL注册模拟类.
- 每个层都可以注册其依赖项的对象,例如业务层注册数据访问层的组件.要测试BL,测试平台必须卸载"真正的"DAL对象并注册模拟对象.
- 应用程序(或测试应用程序)注册依赖项的所有对象.
有人可以用不同的途径帮助我提出一些想法和利弊吗?以这种方式利用Castle Windsor的示例项目的链接将非常有用.