部署webAPI服务器端所需的最少文件

SAS*_*ter 11 c# service wcf wcf-web-api asp.net-web-api

因此,经过大量的研究,我开始使用webAPI入口点来增强我们的服务服务器堆栈.基于这个主题,特别是Digerati董事会成员的最后一篇文章,我们将webAPI服务作为WCF应用层的外观实现.(我们的WCF服务只是我们的应用程序层的外观,其中所有行为都存在)

我的问题是这个.我下载了MVC 4并在我的服务解决方案中创建了一个新的WebAPI项目.但哇,在我的项目中创造了大量废话,我根本不需要!例如,所有图像文件,家庭控制器,视图和模型等.

因此,在将其拆解为服务项目时,构建功能服务项目需要的最小文件是什么?我们的目的是在同一服务器中并排发布两种服务类型(WCF和webAPI).每个服务调用执行相同的相同服务调用并返回请求的特定DTO.到目前为止,它看起来像App_Start,Controllers和Glabal.asax/web.config条目.我绝对不需要视图,模型或图像!

关于其他人为完成纯服务部署所做的工作的任何意见都将受到欢迎.

Yan*_*vin 18

同样的问题在这里 我发现Shawn Kendrot的文章解释了如何创建最小的Web API项目.它是为Web API的beta版编写的,但似乎仍然有效.

  1. 创建一个空的ASP.NET项目.
  2. 添加对System.Web.Http和的引用System.Web.Http.WebHost(版本4.0.0.0)
  3. 添加Global.asax文件
  4. 在中注册路线Global.Application_Start.就像是:

    protected void Application_Start(object sender, EventArgs e)
    {
        GlobalConfiguration.Configuration.Routes.MapHttpRoute(
            name: "DefaultApi",
            routeTemplate: "api/{controller}/{id}",
            defaults: new { id = RouteParameter.Optional });
    }
    
    Run Code Online (Sandbox Code Playgroud)
  5. 添加控制器

    public class SampleController : ApiController
    {
      public string Get(int id)
      {
        return "Hello";
      }
    }
    
    Run Code Online (Sandbox Code Playgroud)
    1. 使用URL在本地运行项目/api/sample/123并享受结果:

在此输入图像描述

  • +1这应该是官方文档中的某个地方! (5认同)