1

我了解stackoverflow 使用Linq to SQL。我决定,由于 stackoverflow 使用 linq to sql(我认为在高流量站点中运行良好),我将继续在我的 MVC 4 应用程序中使用它。

到目前为止,我的解决方案中有一个 MVC 4 互联网项目、一个 Web api 项目、模型类库,用于覆盖 linq to sql 中的一些映射,然后是我的 linq to sql 库项目。

我注意到当我向解决方案添加一个 web api 项目时,该 api 项目也有视图、控制器等作为常规的 mvc 4 项目。

Web api 项目是否提供与 MVC 4 Web 项目相同的视图等功能?您对项目设置有什么建议...

  1. 消除 mvc 4 互联网项目,只使用 web api。
  2. 消除 web api 并使用存储库?
  3. 同时使用 mvc 4 互联网项目和 web api?或者 ?????为什么?

我正在将一个 asp.net 网络表单应用程序移至 mvc。由于 stackoverflow 使用 linq to sql 我决定重新使用我的 linq to sql 库而不是创建 linq to 实体。

所有数据访问和操作都是使用 linq to sql 完成的,因此我将查询转移到 web api 会容易得多。

我想尽可能多地重用代码,并将使用 Telerik 的 Kendo UI for MVC。

该应用程序需要在线和离线工作,所以我认为 api 会很好。

但是在注意到 api 包含与 mvc internet 项目相同的对象类型之后,我不明白为什么我会同时使用 internet 和 api mvc 项目。

谢谢

4

1 回答 1

1

你可以走两条路。如果您创建一个 Web API 项目,它会附带所有 MVC4 功能。在控制器文件夹项目中,如果您右键单击并说新建,您可以选择创建 Web API 控制器或 MVC 控制器。由于两者的 URL 不同(Web APi 默认会在 url 中包含 /api/),您可以决定是调用 MVC4 控制器还是 Web API 控制器。

于 2013-03-07T16:11:28.207 回答