title: Null reference when trying to post with ViewModel
body: <p>Currently I have a ViewModel which is comprised of 2 lists of models.  Displaying contents using the ViewModel is fine, however when I try to post I get a null reference exception.</p>
  
  <pre><code>public class DashboardViewModel
  {
      public IList&lt;DashboardModel&gt; dashboard { get; set; }
      public IList&lt;WidgetModel&gt; widgets { get; set; }
  }
  </code></pre>
  
  <p>Here is the form on the view</p>
  
  <pre><code> @using (Html.BeginForm("AddDashboard", "Dashboard", FormMethod.Post))
              {
                  @Html.AntiForgeryToken()
  
                  &lt;div class="form-horizontal"&gt;
                      &lt;h4&gt;DashboardModel&lt;/h4&gt;
                      &lt;hr /&gt;
                      @Html.ValidationSummary(true, "", new { @class = "text-danger" })
                      &lt;div class="form-group"&gt;
                          @Html.LabelFor(model =&gt; model.dashboard.Last().DashName, htmlAttributes: new { @class = "control-label col-md-2" })
                          &lt;div class="col-md-10"&gt;
                              @Html.EditorFor(model =&gt; model.dashboard.Last().DashName, new { htmlAttributes = new { @class = "form-control" } })
                              @Html.ValidationMessageFor(model =&gt; model.dashboard.Last().DashName, "", new { @class = "text-danger" })
                          &lt;/div&gt;
                      &lt;/div&gt;
  
                      &lt;div class="form-group"&gt;
                          &lt;div class="modal-footer"&gt;
                              &lt;button type="button" class="btn btn-default" data-dismiss="modal"&gt;Close&lt;/button&gt;
                              &lt;button type="submit" value="AddDashboard" class="btn btn-primary"&gt;Save changes&lt;/button&gt;
                          &lt;/div&gt;
                      &lt;/div&gt;
                  &lt;/div&gt;
              }
  </code></pre>
  
  <p>and here is my action</p>
  
  <pre><code> [HttpPost]
      [ValidateAntiForgeryToken]
      public ActionResult AddDashboard([Bind(Include = "DashID,DashName,CreatedBy,CreatedDate")] DashboardViewModel dashboardVM)
      {
          if (ModelState.IsValid)
          {
              DashboardModel newDashboard = dashboardVM.dashboard.Last();
              newDashboard.CreatedBy = User.Identity.GetUserId();
              newDashboard.CreatedDate = DateTime.Now;
  
              db.dashboards.Add(newDashboard);
              db.SaveChanges();
              return RedirectToAction("Index");
          }
  
          return View(dashboardVM);
      }
  </code></pre>
  
  <p>The null reference happens in the AddDashboard action I have set a breakpoint and realised that dashboardVM is null, the dashboard property is null</p>