5

我进行了一些搜索,但没有找到此问题的可用答案。

好的,我的 MVC 3 架构是这样的:

- Project.EDM (contains only the entity framework edmx file and its .tt and .cs entity classes)
- Project.DAL (contains IXxxRepositiory and XxxRepository where CRUD is performed on the entity classes)
- Project.Web (the MVC3 project. Controllers transfer data from ViewModels into entity models and call the CRUD functions in the DAL repositories.)

WebApiin看起来很有吸引力,MVC4因为我们将能够从其他应用程序调用 CRUD 操作。我们都喜欢这个想法。

但是我发现的现有示例在ApiController. 我习惯将这些操作放到一个单独的 DAL 项目中。推荐的选择是什么?我们还能有一个单独的 DAL 类吗?你们的专家如何设计架构?

感谢您提供所有有用的建议。

4

1 回答 1

7

我要做的是:

  • 用于查询数据库的存储库
    • 用于验证内容并避免代码重复的服务层
      • 网页界面
      • 网络 API

因此,UI 和 API 都将拥有一个或多个服务,而这些服务又拥有一个或多个存储库对象。

大多数示例直接从 ApiController 查询数据库的唯一原因可能是因为简单。

于 2012-05-18T13:53:47.350 回答