title: Using multiple delegating handlers in a web API call
body: <p>I have a web API call that needs to make use of 2 delegating handlers, but I never seem to get in to the second handler. The route is registered with the handlers. I am not allowed to set the handlers in the global config.</p>
  
  <pre><code> DelegatingHandler[] handlers = new DelegatingHandler[2];
          handlers[0] = new HandlerA();
          handlers[1] = new HandlerB();
  
          RouteTable.Routes.MapHttpRoute(
              name: "TestAPI",
              routeTemplate: "api/{controller}",
              handler: HttpClientFactory.CreatePipeline(
                  innerHandler: new HttpClientHandler(),
                  handlers: handlers
              ),
              defaults: new { controller = "test"},
              constraints: null
          );
  </code></pre>
  
  <p>HandlerA triggers a breakpoint without further problems.</p>
  
  <pre><code> protected override Task&lt;HttpResponseMessage&gt; SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) {
          if (request == null)
              throw new ArgumentNullException("request");
  
          //Breakpoint is hit
          return base.SendAsync(request, cancellationToken);
      }
  </code></pre>
  
  <p>I'd expected to arrive in the HandlerB but it never does, it goes straight to the API controller. Handler A doesn't do anything to the request.</p>