title: Posting empty dictionary to ASP.NET MVC4 action with Jquery
body: <p>I'm using jquery to post dictionary to my controller action:</p>
  <p>Client-side code:</p>
  <pre><code>var dict = {};
  // var dict = {&quot;type&quot;: &quot;type-1&quot;}; // this works fine
  $.post('/MyController/MyAction?id=' + jsId + '&amp;data=' + jsData, { additionalFields : dict }, function () { //some callback });
  </code></pre>
  <p>Server-side code:</p>
  <pre><code>    public ActionResult MyAction([FromUri]Guid id, [FromUri]string data, [FromBody]Dictionary&lt;string, string&gt; additionalFields)
      {
          //some code
          return RedirectToAction(&quot;Index&quot;);
      }
  </code></pre>
  <p>If there are no additional data and dict variable is empty I receive strange data at the server side:
  additionalFields dictionary will contain two entries:</p>
  <p><strong>controller</strong>: MyController</p>
  <p><strong>action</strong>: MyAction</p>
  <p>How i can fix it?</p>
  <p>Here is picture that shows server-side data when i'm posting empty dictionary:
  <img src="https://i.stack.imgur.com/19ZlI.png" alt="strange" /></p>