【问题标题】:ASP.NET MVC 5 Application calls local WebAPI?ASP.NET MVC 5 应用程序调用本地 WebAPI?
【发布时间】:2014-05-13 04:29:02
【问题描述】:

有一个 Web 应用程序,其中大多数页面使用 MVC 5 视图,但可能使用一些 SPA 的主页除外。但是,现在我想使用 MVC 5 视图创建主页,然后使用 SPA 重写它。

我现在应该创建一个 WebApi 控制器吗?那么控制器会使用 Web Api 控制器吗?那么它会让未来变得更容易吗?

在另一个 MVC 控制器中使用本地 WebApi 的好方法是什么?希望它可以是强类型。

【问题讨论】:

    标签: .net asp.net-mvc asp.net-mvc-5


    【解决方案1】:

    将 Web API 用作返回 JSON 数据的 Rest 完整服务听起来是个好主意。 因此,您可以使用 Angular 或其他 javascript 库来调用其余的完整服务,并用于将来构建您的 SPA 应用程序。

    如果您的 Web API 在同一个项目中,您只需实例化类即可访问 WebAPI 控制器

    var webApi = new WebAPIController();
    var data = webApi.methodName(); 
    

    否则您可以使用 Jquery ajax 并使用 Jquery.ajax 调用您的 Web api 方法。或者,如果它是一个外部 Web API,您可以使用 HTTPClient 来使用 Web API。

    【讨论】:

      【解决方案2】:

      是的,您可以这样做。这是一个很好的链接和很好的方法。

      requestMethod.getRequest("POST", "application/json", string.Format("{0}/api/products/", json).GetResponse();
      

      参考:

      http://codebetter.com/johnvpetersen/2012/03/22/accessing-a-asp-net-webapi-rest-service-from-asp-net-mvc/

      【讨论】:

        猜你喜欢
        • 2017-01-16
        • 2012-10-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-02-24
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多