wgp*_*ubs 0 entity-framework dependency-injection ef-code-first asp.net-mvc-3 entity-framework-4.3
我正在使用一个带有ASP.NET MVC 3应用程序的EF Code First方法,而不是重新创建轮子,我想知道是否已经存在一个可靠的存储库类,我的自定义存储库类可以扩展以便提供开箱即用的默认功能(例如基本CRUD等).
所以像这样......
public class CustomerRepository : BaseRepository { ... }
Run Code Online (Sandbox Code Playgroud)
...因此将提供一种默认的方式来开箱即用的Customer对象.我想在我的MVC控制器中注入一个ICustomerRepository,并在那里提供我的功能.
我确信这样的东西已经存在,因为我已经用NHibernate做了类似的事情.
谢谢
不,没有内置存储库,除了EF本身(其本身就是工作单元模式的实现,而DbSet基本上是存储库).
目前,软件界对于通用存储库是否具有很大的实际价值存在争议.出于测试目的,许多人认为,它们提供了简单的单元测试.其他人说单元测试存储库没有帮助,因为模拟存储库的行为与实际存储库的行为不同(因为linq - > Sql转换层,在模拟的存储库中不存在).
许多人建议您使用内存数据库(如SqlLite)对EF进行集成测试,而不是对其进行单元测试.
尽管如此,如果您打算使用存储库,网上有很多例子,具有不同的样式和方法.或者你可以自己动手.MS不提供一个.
| 归档时间: |
|
| 查看次数: |
1526 次 |
| 最近记录: |