asp.net mvc Filter拦截跳转

来源:互联网 发布:赵总定制机箱淘宝店 编辑:程序博客网 时间:2024/06/05 23:48

在刚学mvc的时候 我一开始随便的做了拦截跳转,这样也实现了跳转 表面看起来完全没问题!

 if (filterContext.HttpContext.Session["userId"] == null)
            {

                 filterContext.HttpContext.Response.Redirect("~/LoginContent/Login", true);
            }

但是某一天,突然调试了一下发现这个跳转 并不是及时的,而是会等把index的这个 action 执行,视图加载完毕才跳转!也是就是类似 在asp.net webform 里面 使用javascript做跳转!必须等到页面加载完毕,才会跳转!这样也就意味的 根本没有进行拦截!

 

 if (filterContext.HttpContext.Session["userId"] == null)
            {
                filterContext.Result = new RedirectResult("~/LoginContent/Login");
                base.OnActionExecuting(filterContext);
            }

就把一句话进行改变,结果却与众不同!
原创粉丝点击