title: OnActionExecuting add to model before getting to action
body: <p>I have the following:</p>
  
  <pre><code> public override void OnActionExecuting(ActionExecutingContext filterContext)
      {
          base.OnActionExecuting(filterContext);
  
          if (filterContext == null)
          {
              throw new ArgumentNullException("filterContext");
          }
  
          var model = filterContext.Controller.ViewData.Model as BaseViewModel;
  
          if (model == null)
          {
              model = new BaseViewModel();
              filterContext.Controller.ViewData.Model = model;
          }
  
          model.User = (UserPrincipal)filterContext.HttpContext.User;
          model.Scheme = GetScheme();
      }
  </code></pre>
  
  <p>Now stepping through that i can see the user and scheme on the model are being populated.</p>
  
  <p>By the time I get to the action however they are both null?</p>
  
  <p>What am i doing wrong here?</p>
  
  <p>And adding to this, is this the proper way of adding to the model?</p>
  
  <p>Here is the controller code:</p>
  
  <pre><code>[InjectStandardReportInputModel]
  public ActionResult Header(BaseViewModel model)
  {
      //by this point model.Scheme is null!!
  
  }
  </code></pre>