title: Unable to bind a POST request from a form containing a dropdownlist
body: <p>I am getting a <strong>RequestBindingException</strong> when I POST a form that contains a dropdownlist. Additionally, the server returns a HTTP 400 Bad Request with following POST data:</p>
  
  <pre><code>Address1:address1
  Address2:address2
  City:city
  County:County
  Countries:GB
  PostalCode:test123
  </code></pre>
  
  <p>I'm unsure what I'm doing wrong. Could it be to do with trying to assign the Countries / SelectedCountry properties in the ViewModel's constructor? If so, how should I be assigning initial / default values to these properties? </p>
  
  <p>Or is it a bad idea to use my ViewModel as the endpoint parameter (should it be a separate dto?)</p>
  
  <p>My ViewModel looks like this:</p>
  
  <pre><code>public class AddressDetailsViewModel
  {
      public AddressDetailsViewModel()
      {
          Countries = new List&lt;SelectListItem&gt;
                          {
                              new SelectListItem
                                  {
                                      Selected = true,
                                      Text = "United Kingdom",
                                      Value = "GB"
                                  }
                          };
  
          SelectedCountry = new List&lt;SelectListItem&gt;
                          {
                              new SelectListItem
                                  {
                                      Selected = true,
                                      Text = "United Kingdom",
                                      Value = "GB"
                                  }
                          };
      }
      ...
  }
  </code></pre>
  
  <p>And I'm using the Html Helper to create the dropdown list:</p>
  
  <pre><code>        &lt;li&gt;
              @Html.LabelFor(x =&gt; x.Countries)
              @Html.DropDownListFor(x =&gt; x.Countries, Model.SelectedCountry)
          &lt;/li&gt;
  </code></pre>
  
  <p>My Service endpoint (won't get hit) looks like:</p>
  
  <pre><code>public object Post(AddressDetailsViewModel data)
  {
      ...
  }
  </code></pre>