title: webapi post method with parameters doesn't work
body: <p>When I call my webAPI controller that contains a post method with NO parameters it goes to the method.  However, when I pass parameters (and when I update the api controller with paramters as well) into this see the snippet below the 1st snippet I get the 405 error that it doesn't support POST.</p>
  
  <pre><code>var captchURL = "/api/Captcha";  
  $.ajax({
         url: captchURL,
         dataType: 'json',
         contentType: 'application/json',
         type: 'POST'
  })
  
  
  
  var jsondata = {solution: "7", answer: "7"};
      var captchURL = "/api/Captcha";  
      $.ajax({
             url: captchURL,
             dataType: 'json',
             contentType: 'application/json',
             type: 'POST',
             data: JSON.stringify(jsondata)
      })
  </code></pre>
  
  <p><strong>UPDATE - Controller Code:</strong></p>
  
  <pre><code>public class CaptchaController : ApiController
  {
      private readonly ICaptchaService _service;
      public CaptchaController(ICaptchaService service)
      {
          _service = service;
      }
  
      public Captcha Get()
      {
          return _service.Get();
      }
  
      [HttpPost]
      public bool Post(string solution, string answer)
      {
          return _service.Post();
  
      }
  }
  </code></pre>
  
  <p><strong>UPDATE - WebApiConfig:</strong></p>
  
  <pre><code>        config.Routes.MapHttpRoute(
              name: "DefaultApi",
              routeTemplate: "api/{controller}/{id}",
              defaults: new { id = RouteParameter.Optional }
          );
  </code></pre>
  
  <p>Is it because I don't have the solution and answer params (in my WebApiConfig) that it doesn't recognize them?</p>
  
  <p>What am I doing incorrectly?</p>