title: MVC3 not rendering my SelectList when using @Html.EditorFor
body: <p>I am trying to render a ViewModel using Razor and MVC3.  For some reason my SelectList (WidgetTypes below) does not render even though the rest all render just fine.  Can anyone shed some light as to why not?  I do not want to change the View to use @Html.EditorFor(m => m.SystemName) etc. for each field because I use dynamic models for the widgets which will cause the same problem.</p>
  
  <p>My ViewModel:</p>
  
  <pre><code>public class CreateWidgetViewModel 
  {
      [Required]
      public string Title { get; set; }
  
      [Required(ErrorMessage = "The System Name is required")]
      [Display(Name = "System Name")]
      public string SystemName { get; set; }
  
      [Required]
      [Display(Name = "Widget Type")]
      public string WidgetType { get; set; }
  
      [Required]
      [Display(Name = "Widget Types")]
      public SelectList WidgetTypes { get; set; }
  }
  </code></pre>
  
  <p>My Controller:</p>
  
  <pre><code>[HttpGet]
  public ActionResult Create()
  {
      var widgetTypes = from wt in _widgetService.WidgetTypes
                        select new
                        {
                            Name = wt.WidgetName,
                            WidgetType = wt.GetType().AssemblyQualifiedName
                        };
  
      var viewModel = new CreateWidgetViewModel
      {
          WidgetTypes = new SelectList(widgetTypes, "WidgetType", "Name")
      };
  
      if (Request.IsAjaxRequest())
      {
          return PartialView(viewModel);
      }
      return View(viewModel);
  }
  </code></pre>
  
  <p>My View:</p>
  
  <pre><code>@{
      ViewBag.CurrentPage = "widgets";
  }
  &lt;h2&gt;@ViewBag.Title&lt;/h2&gt;
  @using (Html.BeginForm())
  {
      @Html.ValidationSummary(true)
      &lt;fieldset&gt;
          &lt;div&gt;
              @Html.EditorFor(model =&gt; model)
          &lt;/div&gt;
      &lt;/fieldset&gt;
      &lt;div&gt;
          &lt;input type="submit" value="Save" /&gt;&amp;nbsp;or&amp;nbsp;@Ajax.ActionLink("Back to list", "Index", "Widget", 
          new AjaxOptions { HttpMethod = "Get", UpdateTargetId = "ajax-replace" })
      &lt;/div&gt;
  }
  </code></pre>