title: Asp.net core mvc ajax post to controller with multiple parameters return bad request
body: <p>I have my controller action methods as follows,</p>
  
  <pre><code>public class UserController : BaseController&lt;UserController&gt;
  {
      [HttpGet]
      public IActionResult Assignment(Guid id)
      {
          return View();
      }
  
      [HttpPost]
      public IActionResult Assignment(Guid id, [FromBody] List&lt;UserViewModel&gt; assignees)
      {
          return View();
      }
  }
  </code></pre>
  
  <p>The ajax method in <code>Assignment.cshtml</code> page</p>
  
  <pre><code>$("#btn-save").click(function () {
      var url = "/User/Assignment/@Model.SelectedUser.Id";
      $.ajax({
          type: "POST",
          url: url,
          contentType: "application/json",
          data: JSON.stringify({ assignees: assignmentPage.SelectedUsers })
      });
  });
  </code></pre>
  
  <p>So this builds a url like;</p>
  
  <blockquote>
    <p><code>http://localhost:8800/User/Assignment/f474fd0c-69cf-47eb-7281-08d6536da99f</code></p>
  </blockquote>
  
  <p>This is the only route configuration in my <code>Startup.cs</code>.</p>
  
  <pre><code>app.UseMvc(routes =&gt;
  {
      routes.MapRoute(name: "default",
          template: "{controller=Home}/{action=Index}/{id?}");
  });
  </code></pre>
  
  <p>I never hit to Assignment <strong>post</strong> action, server returns <strong>400</strong>, I've searched and couldn't find yet, how am I supposed to configure my route for an action like this?</p>