title: The parameters dictionary contains a null entry for parameter error while rendering partial view
body: <p>I am basically trying to refresh my partial view on some clickEvent() and I am doing an Ajax POST for that. My View looks something like following:</p>
  
  <pre><code>&lt;script type="text/javascript"&gt;
          $("#employeeGrid").click(function() {
              var grid = $("#employeeGrid").data("kendoGrid");
              var currentSelection = grid.dataItem(grid.select());
              alert(currentSelection.Id);
              $.ajax({
                  data: JSON.stringify({ id: 1 }),
                  url: "/Employee/ShowEmployeeDetails",
                  type: "POST",
                  success: function (result) {
                      // refreshes partial view
                      $('#EmployeeDetails').html(result);
                  }
              });
          });
        &lt;/script&gt;
  </code></pre>
  
  <p>And my controller looks like following:</p>
  
  <pre><code>[HttpPost]
          public ActionResult ShowEmployeeDetails(int id)
          {
  
              List&lt;EmployeeLOAHistory&gt; employeeLoaHistoryList = new List&lt;EmployeeLOAHistory&gt;
              {
                  new EmployeeLOAHistory
                  {
                      Id = 1,
                      StartDate = DateTime.Now,
                      EndDate = DateTime.Now
                  },
                  new EmployeeLOAHistory
                  {
                      Id = 2,
                      StartDate = DateTime.Now,
                      EndDate = DateTime.Now
                  }
              };
  </code></pre>
  
  <p>Also, when I trace my request in the Firebug, it also shows that the id was posted correctly and it looks like folloing:</p>
  
  <pre><code>{"id":1}
  </code></pre>
  
  <p>However, response stream tells completely different story and it looks like following:</p>
  
  <pre><code>&lt;title&gt;The parameters dictionary contains a null entry for parameter 'id' of non-nullable type 'System.Int32' for method 'System.Web.Mvc.ActionResult ShowEmployeeDetails(Int32)'
  
                  return PartialView("_EmployeeDetails");
              }
  </code></pre>
  
  <p>I have no idea why is that. Any suggestions?</p>