【发布时间】:2015-04-05 00:10:35
【问题描述】:
我正在尝试在 asp.net mvc 项目中组织数据访问层。我已经阅读了很多关于此的不同文章,所以我仍然有一些问题要解决这个问题:
-
我应该为数据库中的每个实体还是为所有或一个通用实例创建存储库实例,例如
PostRepository可以包括Post、Comment和Tag等实体? 在控制器中,我必须获取一些数据,转换为 ViewModel 并将其传递到视图中。最好的地方在哪里?
Services、Controller还是别的什么?如果是
Service。我应该创建多少服务?是否也适用于每个实体并在必要时传递给控制器 3 或 4 服务?或者也许像我想在存储库中那样做? (创建一个包含一些存储库的公共服务。PostService,具有诸如PostRepository、CommentRepository和TagRepository之类的存储库)
【问题讨论】:
-
这主要是基于意见的,因为没有一般的“对与错”。它还取决于您的特定用例和偏好。在这种情况下,我自己根本不喜欢存储库,因为
DbContext是我的存储库 IMO...
标签: c# asp.net-mvc data-access-layer