之前型號我有以下幾點:OnActionExecuting添加越來越行動
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();
}
現在通過步進我可以看到模型上的用戶和方案正在填充。
當我開始行動時,他們都是空的?
我在這裏做錯了什麼?
此外,這是添加到模型的正確方法?
這裏是控制器的代碼:
[InjectStandardReportInputModel]
public ActionResult Header(BaseViewModel model)
{
//by this point model.Scheme is null!!
}
你也可以上傳你的'Controller'代碼?你確定你已經將'attribute'添加到'class'定義或適用的'action'/s? – xandercoded 2012-02-09 17:10:09
添加動作代碼 - 你是說這應該工作嗎?... – iwayneo 2012-02-09 17:12:30
同樣的問題在這裏討論http://stackoverflow.com/questions/4766156/all-viewmodels-inherit-from-baseviewmodel-can-i-set -this-in-onactionexecut – 2012-02-09 17:19:17