title: ASP.NET MVC Dropdown List From SelectList
body: <p>I am building the following <code>SelectList</code> in my controller.</p>
  
  <pre><code>var u = new NewUser();
  
  u.UserTypeOptions = new SelectList(new List&lt;SelectListItem&gt;
  {
      new SelectListItem { Selected = true, Text = string.Empty, Value = "-1"},
      new SelectListItem { Selected = false, Text = "Homeowner", Value = ((int)UserType.Homeowner).ToString()},
      new SelectListItem { Selected = false, Text = "Contractor", Value = ((int)UserType.Contractor).ToString()},
  });
  
  return u;
  </code></pre>
  
  <p>And displaying it on my view like this:</p>
  
  <pre><code>@Html.DropDownListFor(m =&gt; m.UserType, Model.UserTypeOptions)
  </code></pre>
  
  <p>It looks like I am giving it a valid set of <code>SelectListItem</code>s in what should be a pretty straightforward dropdown list, but instead of getting a valid <code>&lt;option&gt;</code> list with good values and text, I get this:</p>
  
  <pre><code>&lt;select data-val="true" data-val-range="A user type must be selected." data-val-range-max="2" data-val-range-min="1" data-val-required="The UserType field is required." id="UserType" name="UserType" class="input-validation-error"&gt;
      &lt;option&gt;System.Web.Mvc.SelectListItem&lt;/option&gt;
      &lt;option&gt;System.Web.Mvc.SelectListItem&lt;/option&gt;
      &lt;option&gt;System.Web.Mvc.SelectListItem&lt;/option&gt;
  &lt;/select&gt;
  </code></pre>
  
  <p>What gives?  As far as I can tell, this should work.</p>