【发布时间】:2012-01-26 17:46:48
【问题描述】:
我对 IoC、依赖注入和单元测试还很陌生。我正在开始一个新的宠物项目,我正在努力做好。
我打算使用存储库模式来调解数据。我要从存储库返回的对象将是从 Linq 到实体数据上下文 (EF4) 收集的对象。
我在 Mark Seeman 的“依赖注入”中读到,这样做会产生重要的依赖关系,并且肯定会使测试复杂化(这就是他在库项目中使用 POCO 对象的原因)。
我不明白为什么。尽管对象是由 linq to entity 上下文创建的,但我可以简单地调用构造函数来创建它们,因为它们是普通对象。所以我认为可以创建虚假的存储库,将这些对象向调用者发送。
我也关心POCO类的自动生成,不是很容易。
有人可以带来一些光明吗? POCO 对象对于解耦和可测试的项目真的是必需的吗?
**编辑:感谢 Yuck,我明白最好避免使用模板自动生成,这让我想到了一个设计问题。如果我来自一个大型遗留数据库,他的表承担着各种职责(与具有单一职责的类的概念不太吻合),那么最好的处理方法是什么? p>
不能删除数据库 ;-)
【问题讨论】:
标签: c# entity-framework-4 poco