title: OData null parameter on Post method
body: <p>I have a simple ASP.NET WebApi ODataV4 controller -</p>
  
  <pre><code>public class FooController : ODataController
  {
      [HttpPost]
      public string Post([FromBody] Foo fooObj)
      {
          ...
      }
  }
  </code></pre>
  
  <p>The Foo model is as below and Foo is defined as an EntityType in the EDM model -</p>
  
  <pre><code>public class
  {
      [Key]
      string id {get ; set;}
  
      string name {get; set;}
  }
  </code></pre>
  
  <p>I generated ODataClient for this model and trying to Post a new Foo object - </p>
  
  <pre><code>FooContext container = new FooContext(..);
  Foo newFoo = new Foo() 
  {
        name = "Simple foo"
  }
  container.AddToFoos(newFoo );
  </code></pre>
  
  <p>When I do this, the 'fooObj' in the Post method is null. However when I set the the 'id' property in the request to a non-null value (even empty string), it seems to work fine - </p>
  
  <pre><code>Foo newFoo = new Foo() 
  {
        id = "",
        name = "Simple foo"
  }
  </code></pre>
  
  <p>Any pointers what I am missing here? </p>