5

微软最近发布了 MVC 4 Beta,它拥有这些新的非常好的特性,比如 Web API 和 SPA。与往常一样,Microsoft 的演示并没有从软件设计的角度展示最佳实践。例如,使用与 EF 紧密耦合的 DbController。

在我看来,SPA 和 Web API 在现代 ASP .NET 应用程序中是相辅相成的。我想听听有关构建基于 MVC 4 的解决方案的任何建议,该解决方案将应用这些新技术,如 Web API 和 SPA。

例如,将 Web API 项目与它自己的控制器从基础 MVC4 项目中分离出来是否是一种好习惯。如何处理 SPA 而不是使用 DbController 以单独保持数据持久性?常规 MVC4 应用程序,尤其是 Razor 视图的主要作用是什么?

任何其他想法或建议都非常感谢。

4

2 回答 2

4

关于 MVC4 + Web API 的分离:恕我直言(一如既往)这取决于您的具体项目。

关于 EF:您绝对不应该返回 EF 实体,而是返回您自己的 DTO。

MVC razor 视图的作用可能是渲染您从客户端动态加载的部分视图。您还可以为最初加载的索引页面做一些事情,例如条件加载 CSS / JS 等。

于 2012-03-10T12:52:08.547 回答
3

我认为将 API 保存在与您的 SPA/网站不同的网站项目中是个好主意,因为您可能会遇到贪婪路由的问题。

绝对让您的数据访问独立且松散耦合。

于 2012-03-10T19:03:17.393 回答