每次加载页面时运行代码

时间:2014-01-31 08:33:56

标签: asp.net-mvc asp.net-mvc-4 pageload

所以我开始明白MVC实际上没有形式PageLoad事件等价,所以我每次在页面加载时放置一个我想要执行的代码?我想检查一下cookie。

2 个答案:

答案 0 :(得分:2)

将它放在MVC控制器的构造函数中。

或者像这样:

protected override void OnActionExecuting(ActionExecutingContext filterContext)
{
    base.OnActionExecuting(filterContext);
    // check for cookies!
}   

答案 1 :(得分:0)

如果页面上有多个操作(例如部分视图),我认为这可能会触发页面上的每个操作。

如果您只需要在需要检查

时触发它
filterContext.IsChildAction

喜欢这个

        protected override void OnActionExecuting(ActionExecutingContext filterContext) {
            if (filterContext.IsChildAction) return;

            // check for cookies!
        }

这里提到

In ASP.NET MVC 3, what is filterContext.IsChildAction?