mvc 框架页中如何重定向到顶级页面
如下BaseController 被其他Controller继承(不包括LoginController), 但是mvc网站使用了框架页,所以session失效后会登录页面会在框架页中显示,怎么让他重定向时在顶级页面显示
public class BaseController : Controller
{
//
// GET: /Base/
protected override void OnActionExecuting(ActionExecutingContext filterContext)
{
if (filterContext.HttpContext.Session["Token"] == null)
{
filterContext.Result= RedirectToRoute(new{ Controller ="Login",Action ="LogOn" });
return;
}
base.OnActionExecuting(filterContext);
}
}
[解决办法]
用JS解决,有几种办法,简单的办法
在登陆页面判断父窗口是否为本窗口,不是就再跳转一下。
[解决办法]
top.location = '/login';
[解决办法]
filterContext.Result= Content("<script type='text/javascript'>top.location = '/login';</script>");