我想将一些信息从自定义操作过滤器传递到视图。我用的是ViewBag像这样,但在视图中,无论是性能ViewBag.Title
,并ViewBag.Message
评估对null
。
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
...
filterContext.Controller.ViewBag.Title = "Session Expired";
filterContext.Controller.ViewBag.Message = "Your session has expired. Please login again.";
filterContext.Result =
new ViewResult
{
ViewName = "~/Views/Shared/Info.cshtml"
};
}
在视图中
<div class="row">
<div class =
"col-lg-8 col-md-8 col-sm-8 col-xs-12
col-lg-offset-2 col-md-offset-2 col-sm-offset-2
col-xs-offset-0">
<h2>@ViewBag.Title</h2>
<h3>@ViewBag.Message</h3>
</div>
</div>
在上有一个ViewBag
属性ViewResult
,您可以在其中设置要传递给视图的viewBag项。您可以将动态对象设置为值。
filterContext.Result = new ViewResult
{
ViewName = "~/Views/Shared/Info.cshtml" ,
ViewBag= { Message="SS",Title="Hi title"}
};
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句