【问题标题】:Should I be using Web Api Controller in This Situation?在这种情况下我应该使用 Web Api 控制器吗?
【发布时间】:2014-04-23 15:07:40
【问题描述】:

我正在开发一个页面,您可以在其中通过 jquery x-editable 插件编辑整个页面。进行更改后,将发出 ajax 请求并将更改保存到数据库中。

我想知道这些 ajax 调用是否应该发送到常规的 asp.net mvc 控制器,或者我是否应该创建一个新的 api 控制器并将所有请求都发送到该控制器。

因此,如果您想象this demo page,这些示例中的每一个都会导致对服务器的 ajax 请求。

原始页面将通过 mvc 控制器加载,我可能有其他 ajax 请求转到此 mvc 控制器以按需带回部分视图,但我开始考虑所有这些“编辑字段”它们应该在web api 控制器。

【问题讨论】:

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


    【解决方案1】:

    好问题。 我没有尝试过 x-editable 但重点是:

    当您有很多返回 JSON 的操作或使用没有 一个 HTML 部分 - 你应该尝试使用 web api。

    所以,如果您的后端本质上是提供数据服务,那么:是的,使用 web api 控制器。它应该比 MVC 更简单。

    【讨论】:

    • 是的,这就是为什么我开始认为这些操作的 web api 可能会更好,因为我认为控制器甚至不会返回任何内容(更改已经在 html 端)。我在想虽然页面会有混合,因为我将有一个“添加按钮”,它将通过 ajax 带回带有表单的部分视图。这似乎比让它返回 json 的 web api 调用更好,并且必须从 json 构建表单。
    【解决方案2】:

    是的。你应该选择 ASP.NET WEB API。

    我检查了插件链接并看到了示例请求/响应,例如:

    POST url = "/post"
    name = "country"
    value = "BT"
    pk = "1"
    RESPONSE: status = 200
    --------------------------------------
    

    ASP.NET Web API 是在 .NET Framework 上构建 RESTful 应用程序的理想平台。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-01-17
      • 2022-07-22
      • 1970-01-01
      • 2011-10-26
      • 2013-05-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多