概述
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
//这一步是验证是否登陆
if (filterContext.HttpContext.Session["User"] == null)
{
//当用这个方法的时候, 页面输出完了还会向后面的代码执行,使用return 也没效果;
//
filterContext.HttpContext.Response.Redirect("~/Home/Index",true);
//
return ;
ErrorRedirect(filterContext);
}
// 错误处理方法
private void ErrorRedirect(ActionExecutingContext filterContext)
{
//注:由于前端页面用的Iframe框架,用下面的方法跳转的时候会跳转到iframe里面去,所以不能用注释掉的方法
// filterContext.Result = new RedirectToRouteResult("Default", new RouteValueDictionary(new { controller = "Home", action = "Index" }));
// filterContext.Result = new RedirectResult("/Home/Index");
ContentResult content = new ContentResult();
content.Content = "<script language='javascript'> top.location.href = '/Home/Index';</script>";
filterContext.Result = content;
} // end ErrorRedirect
最后
以上就是呆萌诺言为你收集整理的ASP.NET MVC 拦截器中如何停止往后面的代码运行!的全部内容,希望文章能够帮你解决ASP.NET MVC 拦截器中如何停止往后面的代码运行!所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复