我应该为EF6实现Repository,Work of Work?

Num*_*man 5 c# asp.net-mvc unit-testing entity-framework

由于MSDN说的是关于DbContext:

DbContext实例表示工作单元和存储库模式的组合,以便它可以用于从数据库进行查询并将更改组合在一起,然后将更改作为一个单元写回到存储中.DbContext在概念上类似于ObjectContext.

使用EF5 +时,实现这两个(工作单元和存储库)是不是多余的?

有人可以对这个问题有所了解吗?

我打算使用SQL服务器构建一个基于MVC的应用程序,在阅读了大量关于具有单元可测试性的数据访问技术后,我对上述信息感到很遗憾!

jno*_*ovo 1

这取决于您的项目的复杂性及其要求。例如,以下两个问题可能有助于您的决策:

  1. 除了 EF 之外,您还会使用必须与其配合使用的任何其他数据源吗?
  2. 您将来将 EF 替换为不同的 ORM 或数据源的可能性有多大?

如果您无法预见变化或者您不需要使用 EF 以外的其他工具,那么可能不值得这么麻烦。