title: Complex object added into serialized Array always null on server side
body: <p>I am serializing form data and adding an extra object of users into it. </p>
  
  <p>Jquery code:</p>
  
  <pre><code>....
  var users= getUsers();
  var formData = $("#form").serializeArray();
  formData.push({ name: 'Users', value: users});
  
  $.ajax({
    url: "/ControllerName/ViewName",
    type: "POST",
    contentType: "application/x-www-form-urlencoded; charset=UTF-8"
    data: formData
  });
  ....
  function getUsers() {
    var users= [];
    users.push( new Object({
          Name: "User 1",
    }));
  
  
   return users;
  }
  </code></pre>
  
  <p>C# Model</p>
  
  <pre><code>public class File
  {
      public string Name { get; set; }
  
      public int Id { get; set; }
  
      public List&lt;Users&gt; Users { get; set; }
  
  }
  
  public class Users
  {
      public string Name { get; set; }
  }
  </code></pre>
  
  <p>When the call hits server side controller action, the Users list is always empty (Count of 0). I have tried stringify and sending as Json but that didn't help either. I am using ASP.NET MVC 5 on server side.</p>
  
  <p>What am I doing wrong?</p>
  
  <p><strong>edit</strong>
  What I am having trouble with is trying to push a list of objects into the formData (in this case users). If I push a boolean it deserializes fine on the server side.</p>