【问题标题】:Difference between Controller and API Controller in ASP.net?ASP.net 中控制器和 API 控制器的区别?
【发布时间】:2016-05-04 12:17:06
【问题描述】:

我必须使用 ASP.net MVCWeb API 和 Jquery 来创建 API 调用的应用程序。

现在的问题是:

1) 如果是 API 控制器或简单控制器,我必须使用哪个控制器?

2) 我怎样才能使我的项目结构最好?

如果我在不同的项目中使用 API,那么我必须只使用 Ajax 调用,但是如何使用 Razor 和 MVC 功能模型?

如果我在 MVC 应用程序中使用 Controller 作为 API 控制器,那么我如何在应用程序中使用模型和视图?

【问题讨论】:

标签: jquery asp.net-mvc asp.net-web-api


【解决方案1】:

因为没有其他人插话。

首先,我已经发布了链接。

http://odetocode.com/blogs/scott/archive/2013/07/01/on-the-coexistence-of-asp-net-mvc-and-webapi.aspx

两者之间有很多“重叠”的术语。

哎呀,有时我仍然很难知道哪个是哪个。

MVC 用于“网络层”。这是为最终用户浏览器提供页面的层。 (我会在这里“大部分时间”,而不是每个用例)。

当您在 Visual Studio 中启动 Mvc/WebApi 项目时,它(模板之一)将在同一个项目中混合 MVC 和 WebApi。

这不是必须的设置方式,我从事的专业级应用程序不会这样做。

WebApi 构建 ~Services。这意味着与数据交互的“无 Gui”方式(同样,最常见的用法,不是详尽的列表)

我的应用程序是 MVC,但它在单独的层上调用 WebApi。 Aka,我在 VS 模板中分离了 MVC/WebApi 的“混合”。

为什么有人会这样做?因为现在,我只有浏览器客户端。但是,将来,如果我需要编写智能手机应用程序,我需要做的就是为该智能手机创建表示层,并调用我已经使用 WebApi 编写的现有服务。

这是看待它的一种方式。

虽然术语重叠,但它们的用途不同。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-12
    • 2016-06-30
    • 2016-04-28
    相关资源
    最近更新 更多