C# ASP.NET MVC 4实体框架数据库第一存储库
我一直在阅读C# ASP.NET MVC 4实体框架数据库第一存储库,c#,asp.net,asp.net-mvc,entity-framework,repository,C#,Asp.net,Asp.net Mvc,Entity Framework,Repository,我一直在阅读Pro ASP.NET 4和演示应用程序,它们首先使用实体框架代码。在我的项目中,我已经得到了数据库。在书中,他们只处理一个表,然后为它创建一个ITableNameRepository,然后将其传递给控制器的构造函数。首先用整个数据库的模型创建存储库是否正确?我是否应该向每个控制器的IMyDataModel构造函数传递一个实例?接口名称中有一条线索。他们称之为ITableNameRepository,而不是IDatabaseNameRepository 在我的应用程序中,我传入了一个
Pro ASP.NET 4
和演示应用程序,它们首先使用实体框架代码。在我的项目中,我已经得到了数据库。在书中,他们只处理一个表,然后为它创建一个ITableNameRepository
,然后将其传递给控制器的构造函数。首先用整个数据库的模型创建存储库是否正确?我是否应该向每个控制器的IMyDataModel
构造函数传递一个实例?接口名称中有一条线索。他们称之为ITableNameRepository
,而不是IDatabaseNameRepository
在我的应用程序中,我传入了一个IUnitOfWork
,它将各种存储库作为属性,因此控制器的所有存储库都有一个类似的构造函数签名,当控制器需要访问新存储库时,该签名无需更改
DbContext
类本身是工作单元和存储库模式的组合,其中DbSet
s充当存储库,并SaveChanges()
实现工作单元
DbContext
或IUnitOfWork
确实意味着控制器可以访问整个数据库,但是可以通过几个存储库而不是一个大的存储库。我为每个表使用一个存储库,但我看到许多人提倡“聚合根”