ASP.NET Web API提供了一个独立于执行环境的抽象化的HTTP请求处理管道,而ASP.NET Web API自身的路由系统也不依赖于ASP.NET路由系统,所以它可以采用不同的寄宿方式运行于不同的应用程序中。如果采用Web Host的方式将定义Web API寄宿于一个Web应用之中,其实最终的URL路由还是通过ASP.NET本身的路由系统完成的,那么两个路由系统之间是如何衔接在一起的呢?。[本文已经同步到《How ASP.NET Web API Works?》]

目录
一、HostedHttpRoute
二、HttpWebRoute
三、HostedHttpRouteCollection
四、HttpControllerRouteHandler
五、HttpControllerHandler

前文我们谈到包括路由注册在内的对整个ASP.NET Web API管道的配置是通过HttpConfiguration来完成的。对于Web Host这种寄宿方式,这么一个HttpConfiguration可以通过静态类型GlobalConfiguration来获取。如下面的代码片断所示,GlobalConfiguration具有一个静态只读属性Configuration,它返回的正式我们用于配置的全局HttpConfiguration对象。

class GlobalConfiguration
   2: {
//其他成员
delegate {
new HostedHttpRouteCollection(RouteTable.Routes));
//其他操作
return config;
   8:     });
   9:     
static HttpConfiguration Configuration
  11:     {
  12:         get
  13:         {
return _configuration.Value;
  15:         }
  16:     }
  17: }

相关文章:

  • 2018-04-06
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-01-27
  • 2021-10-05
  • 2022-12-23
猜你喜欢
  • 2021-10-23
  • 2021-05-25
  • 2021-08-29
  • 2021-07-17
  • 2019-03-10
  • 2021-11-01
相关资源
相似解决方案