我们使用MVC体系结构和由BLL和DAL组成的模型。设计 - 依赖地狱解决方案?
所以我们为我们的系统开发“模块”,并且我正在实现的特定模块使用了很多相同的依赖关系。一类尤其有20个依赖关系。目前默认的构造函数是创建一个默认的具体实现,我们还有第二个构造函数[第一个使用]允许注入自己的依赖关系(即测试)。
20构造函数参数看起来像一个非常讨厌代码味道。 其他讨厌的一点就是经常在我开始添加常用的功能,我需要去添加构造函数代码和领域,各个阶级往往一遍又一遍地重复着同样类型的代码。
IoC容器似乎是一个自然的解决方案,但问题是我能走多远?我是否包含DAL依赖项和BLL依赖项?那么“helper”或“service”依赖关系呢?看起来在某个时候,我只是重新创建了“命名空间”结构,并且能够像静态类一样引用我的类,在这一点上,我怀疑我实际获得的是什么。
我无法通过这个想法。有没有人有一个优雅的解决方案或建议?
“我很难考虑这个问题”。看看这个教程:https://github.com/ninject/ninject/wiki –
切线相关:这里是我写的另一个关于减少类的依赖关系的问题的答案。 http://stackoverflow.com/questions/5601920/what-are-your-best-practices-when-using-an-mvc-based-web-framework/5602212#5602212 – Domenic