title: ASP.NET Web API Delete returns 404
body: <p>Using ASP.NET (4.6.1) Web Api on my local IIS 7.5 I'm trying to call a delete method:</p>
  
  <pre><code>[HttpDelete]
  [Route("Values/")]
  public IHttpActionResult DeleteValue(int id)
  {         
      return Ok();
  }
  </code></pre>
  
  <p>Following DELETE request works perfectly fine:  </p>
  
  <p><code>https://localhost/api/Values?id=22</code></p>
  
  <p>But, I would like to call DELETE request like this:</p>
  
  <p><code>https://localhost/api/Values/22</code></p>
  
  <p>This gives me: <code>404.0 — Not Found</code></p>
  
  <p>My api route config is defined like:</p>
  
  <pre><code>config.Routes.MapHttpRoute(
      name: "DefaultApi",
      routeTemplate: "api/{controller}/{id}",
      defaults: new { id = RouteParameter.Optional }
  );
  </code></pre>
  
  <p>My web.config looks like:</p>
  
  <pre><code> &lt;system.webServer&gt;
  &lt;handlers&gt;
    &lt;remove name="WebDAV" /&gt;
    &lt;remove name="ExtensionlessUrlHandler-Integrated-4.0" /&gt;
    &lt;remove name="TRACEVerbHandler" /&gt;
    &lt;add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" /&gt;
  &lt;/handlers&gt;
  &lt;modules&gt;
    &lt;remove name="WebDAVModule" /&gt;
  &lt;/modules&gt;
  </code></pre>
  
  <p>Do I missed something?</p>