title: DropDownListFor is not binding with model property
body: <p>I do not know why dropdownlist is not working in this particular case: </p>
  
  <p>I know, that i have ProjectID > 0, but in dropdownlist i always see first item selected.</p>
  
  <p>Controller:</p>
  
  <pre><code>Helpers h = new Helpers();
  
  [HttpGet]
  [ActionName("Timesheet")]
  public ActionResult TimeSheet(LoggedAssociate assoc, DateChooserModel model)
  {            
      List&lt;TimeReport&gt; timeReports = db.TimeReports.Include("TimeEntries.Project").Where(
          tr =&gt; tr.AssociateID == assoc.ID &amp;&amp;
          tr.DateSubmitted &gt;= model.StartDate &amp;&amp;
          tr.DateSubmitted &lt;= model.FinishDate).ToList();
  
      ViewBag.Projects = h.GetProjects(0);
  
      return View(timeReports);
  }     
  </code></pre>
  
  <p>Helper: </p>
  
  <pre><code>public class Helpers
  {
      public MyRepository db = new MyRepository();
  
      public IEnumerable&lt;SelectListItem&gt; GetProjects(short? selectedValue)
      {
          List&lt;SelectListItem&gt; _projects = new List&lt;SelectListItem&gt;();
          _projects.Add(new SelectListItem() { Text = "Project...", Value = "0", Selected = selectedValue == 0 });
          foreach (var project in db.GetProjects())
          {
              _projects.Add(new SelectListItem()
              {
                  Text = project.Name,
                  Value = project.Id.ToString(),
                  Selected = selectedValue &gt; 0 &amp;&amp; selectedValue.Equals(project.Id)
              });
          }
          return _projects;
      }  
  }
  </code></pre>
  
  <p>View:</p>
  
  <pre><code>@using Project.DataAccess.DataModels
  @model List&lt;TimeReport&gt;
  
  @{
      ViewBag.Title = "TimeSheet";
      Layout = "~/Views/_Layout.cshtml";
      int index = 0;   // i use this variables to manage collections with binder 
      int index2 = 0;
  }
  
  @using (Html.BeginForm())
  {
  foreach (TimeReport t in Model)
  {
     //
     foreach (TimeEntry te in t.TimeEntries)
     {
         //
         @Html.DropDownListFor(model =&gt; model[index].TimeEntries[index2].ProjectId, 
             (IEnumerable&lt;SelectListItem&gt;)ViewBag.Projects)
         //
         index2++;
      }  
      //
      index++;
  }
  &lt;input type="submit" value="Submit" /&gt;
  }
  </code></pre>
  
  <p>Also in firebug i see:</p>
  
  <pre><code>&lt;select name="[0].TimeEntries[0].ProjectId"&gt;      
      &lt;option selected="selected" value="0"&gt;Project...&lt;/option&gt;
      &lt;option value="1"&gt;First Project&lt;/option&gt;
      &lt;option value="2"&gt;Second Project&lt;/option&gt;
  &lt;/select&gt;
  </code></pre>