title: HttpPostedFileBase not binding to model
body: <p>here is my ViewModel</p>
  
  <pre><code>public class FaultTypeViewModel
  {
      [HiddenInput(DisplayValue = false)]
      public int TypeID { get; set; }
  
      [Required(ErrorMessageResourceType = typeof(AdministrationStrings), ErrorMessageResourceName = "FaultTypeNameRequired")]
      [Display(ResourceType = typeof(AdministrationStrings), Name = "FaultTypeName")]
      public string TypeName { get; set; }
  
      [Display(ResourceType = typeof(AdministrationStrings), Name = "FaultTypeDescription")]
      [DataType(DataType.MultilineText)]
      public string TypeDescription { get; set; }
  
      [Display(ResourceType = typeof(AdministrationStrings), Name = "FaultTypeImageFile")]
      public HttpPostedFileBase TypeImageFile { get; set; }
  
      [HiddenInput(DisplayValue = false)]
      public string TypeImageURL { get; set; }
  }
  </code></pre>
  
  <p>Notice I have a "TypeImageFile" HttpPostedFileBase
  I would expect that the model binder would bond that property from the form to the model passes to the controller bu I just keep receiving null.</p>
  
  <p>here is the relevant code in the View:</p>
  
  <pre><code>@using (Html.BeginForm("AddFaultType","Administration", FormMethod.Post))
  {
  
      &lt;div class="modal-header"&gt;
          &lt;button type="button" class="close" data-dismiss="modal" aria-hidden="true"&gt;
              ×&lt;/button&gt;
          &lt;h3 id="myModalLabel"&gt;@SharedStrings.Add @SharedStrings.FaultType&lt;/h3&gt;
      &lt;/div&gt;
      &lt;div class="modal-body"&gt;
          @Html.ValidationSummary(true)
          &lt;div class="editor-label"&gt;
              @Html.LabelFor(model =&gt; model.TypeName)
          &lt;/div&gt;
          &lt;div class="editor-field"&gt;
              @Html.EditorFor(model =&gt; model.TypeName)
              @Html.ValidationMessageFor(model =&gt; model.TypeName)
          &lt;/div&gt;
          &lt;div class="editor-label"&gt;
              @Html.LabelFor(model =&gt; model.TypeDescription)
          &lt;/div&gt;
          &lt;div class="editor-field"&gt;
              @Html.EditorFor(model =&gt; model.TypeDescription)
              @Html.ValidationMessageFor(model =&gt; model.TypeDescription)
          &lt;/div&gt;
          &lt;div class="editor-label"&gt;
              @Html.LabelFor(model =&gt; model.TypeImageFile)
          &lt;/div&gt;
          &lt;div class="editor-field"&gt;
              &lt;input type="file" name="TypeImageFile" id="TypeImageFile" /&gt;
          &lt;/div&gt;
      &lt;/div&gt;
  
      &lt;div class="modal-footer"&gt;
          &lt;input type="submit" value="@SharedStrings.Add" class="btn btn-primary" /&gt;
          @Html.ActionLink(SharedStrings.Cancel, "Index", "Administration", null, new { Class = "btn", data_dismiss = "modal", aria_hidden = "true" })
      &lt;/div&gt;
  }
  </code></pre>
  
  <p>and here is the controller:</p>
  
  <pre><code>        [HttpPost]
          public ActionResult AddFaultType(FaultTypeViewModel i_FaultToAdd)
          {
              var fileName = Path.GetFileName(i_FaultToAdd.TypeImageFile.FileName);
              var path = Path.Combine(Server.MapPath("~/App_Data/uploads"), fileName);
              i_FaultToAdd.TypeImageFile.SaveAs(path);
  
              return RedirectToAction("Index");
          }
  </code></pre>