title: Attribute routing doesn't work on Put request
body: <p>In my simple WebApi project I'm only using attribute routing by doing this:</p>
  
  <pre><code>public static class WebApiConfig
  {
      public static void Register(HttpConfiguration config)
      {
          config.MapHttpAttributeRoutes();
      }
  }
  </code></pre>
  
  <p>I have this controller:</p>
  
  <pre><code>[RoutePrefix("myprefix")]
  public class SomeController : ApiController
  {
      [HttpGet]
      [Route("v2/test/dosomething")]
      public IHttpActionResult TestIt()
      {
          return Ok("Test ok");
      }
  
      [HttpPut]
      [Route("v2/myaction/somethingelse")]
      public async Task&lt;IHttpActionResult&gt; MyAction(string message)
      {
          return Ok("Put ok");
      }
  }
  </code></pre>
  
  <p>I'm accessing the above as follows:</p>
  
  <pre><code>GET http://localhost/myapp/myprefix/v2/test/dosomething
  PUT http://localhost/myapp/myprefix/v2/myaction/somethingelse
  </code></pre>
  
  <p>The <code>GET</code> works fine. However, the <code>PUT</code> returns:</p>
  
  <pre><code>{
      "Message": "No HTTP resource was found that matches the request URI 'http://localhost/myapp/myprefix/v2/myaction/somethingelse'.",
      "MessageDetail": "No action was found on the controller 'Some' that matches the request."
  }
  </code></pre>
  
  <p>What am I missing?</p>