当session过期,跳转到登陆页面。
用户登陆后很长时间没有操作,session过期。则跳转到登陆页面。这怎么写代码。
主要是有很多页面,不可能在每个页面都加if(session["XX"]==null)的判断。是不是要在什么配置文件里写。语言是C#的?
各位大虾帮帮们。
------解决方案--------------------但是我们项目里面每个页面都有引用
------解决方案--------------------建立一个类,假设该类叫做PageBase,PageBase类继承System.Web.UI.Page类,重写OnLoad事件,在OnLoad事件里判断session是否存在
using System;
using System.Web.UI;
public class PageBase : Page
{
//重写Page基类的OnLoad事件方法
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
if (Session["LOGIN_FLAG"] == null)
{
Response.Redirect("Login.aspx");
}
}
}
在网站中新建页面,你会发现
public partial class _Default : System.Web.UI.Page
{
每张页面都继承了 System.Web.UI.Page
将它修改为继承PageBase
public partial class _Default :PageBase
{
这样就可以了
------解决方案--------------------可以在webconfig里form认证
<authentication mode= "Forms ">
<forms name= ".login_Info " loginUrl= "WebForm1.aspx " protection= "All " timeout= "20 " />
</authentication>
<authorization>
<deny users= "? " />
</authorization>
------解决方案--------------------用继承的方法,如果用forms验证的话,是在没有登录的情况,访问需要session值不为空时才跳到指定页面,如果是session过期是不是跳到页面的,而是跳到error指定的页面