title: POST to Web API OData, the entity that is received is null
body: <p>I'm trying to send data to Web API using OData. But the entity which is received is always null.</p>
  
  <p>I have this call using JQuery:</p>
  
  <pre><code>        $.ajax({
              url: "/odata/Products",
              type: "POST",
              //contentType: "application/json;odata=verbose",
              contentType: 'application/json; charset=utf-8',
              data: JSON.stringify(productToAdd),
              dataType: "json",
              success: function () {
                  alert("Server call has been OK!!");
              },
              error: function () {
                  alert("Server call has been failed!!");
              }
          });
  </code></pre>
  
  <p>The productToAdd object is like:</p>
  
  <p>{"name":"Apple","description":"Good!!","price":"12.3","category":"Fruit"}</p>
  
  <p>My controller is:</p>
  
  <pre><code>public class ProductsController : EntitySetController&lt;Product, string&gt;
  {
      private IProductService _prodSvc;
  
      public ProductsController(IProductService prodSvc)
      {
          _prodSvc = prodSvc;
      }
  
      [Queryable]
      public override IQueryable&lt;Product&gt; Get()
      {
          return _prodSvc.GetAllProducts();
      }
  
      protected override Product CreateEntity(Product product)
      {
         var addedProduct = _prodSvc.AddProduct(product);
         return addedProduct;
      }
  }
  </code></pre>
  
  <p>Also I've tried to use the datajs-1.10.js framework but I have got the same result.</p>
  
  <pre><code>        OData.request(
            {
                requestUri: "/odata/Products",
                method: "POST",
                data: productToAdd
            },
            function (data) {
                alert("Server call has been OK!!");
            }
          );
  </code></pre>
  
  <p>I think that something is wrong when it deserializes the JSON object but I don't know what. Could you help me?</p>
  
  <p>Thanks!! </p>