我需要通过 ASP.NET MVC 应用程序记录用户的旅程。我正在使用全局 ActionFilter 和 log4net。我需要能够ViewBag.Title
从视图中设置的 ViewBag 中读取值(特别是)。目前 ViewBag 是空的。
public class UserActivityFilter : IActionFilter
{
public void OnActionExecuted(ActionExecutedContext filterContext)
{
var properties = new Dictionary<string, string>();
if (filterContext.Result is ViewResult)
{
var action = filterContext.Result as ViewResult;
properties.Add("Page.Title", action.ViewBag.Title);
}
// Log4net stuff goes here
}
}
我的观点一般有以下几种形式:
@model Foo.BarViewModel
@{
ViewBag.Title = "Application: " + Model.Name;
}
@Html.DisplayForModel()
是否可以读取视图中设置的 ViewBag 中的值?