首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

Session_End事件,该怎么处理

2012-01-07 
Session_End事件我希望实现当Session失效时,跳转到登录页面。下面是我的做法,但不能实现:protectedvoidSess

Session_End事件
我希望实现当Session失效时,跳转到登录页面。
下面是我的做法,但不能实现:
    protected   void   Session_End(object   s,EventArgs   e)
    {
        HttpApplication   app   =   (HttpApplication)s;
        HttpContext   context   =   app.Context;
        context.Response.Redirect( "login.aspx ");
    }

是不是我的思路有问题?
能不能给我个方法。
附:我希望在应用程序级做这样的处理。

[解决办法]
你没理解B/S程序的特点。你不能那么判断的
[解决办法]
不能在应用程序级做的,即使做,也不能在Session_End事件里做,
[解决办法]
在在应用程序级处理会陷入死循环
Page_Load:

if(Session[ "x "] == null) Response.Redirect( "login.aspx ");

[解决办法]
b/s是 是单一 服务 面向 多用户的

不能那么多

只能在页面程序端 判断

if(Session[ "user "] == null) Server.Transfer( "login.aspx ", false);

[解决办法]
在用户的会话销毁的时候,你的服务器端代码已经完全没有对客户端的控制能力了.
[解决办法]
在用户的会话销毁的时候,你的服务器端代码已经完全没有对客户端的控制能力了.
你说的对。
[解决办法]
protected void Application_PostAcquireRequestState( object sender, EventArgs e )
{
if(HttpContext.Current.Request.Url.ToString().ToLower().IndexOf( "login.aspx ") == -1)
{
if (HttpContext.Current.Session[ "x "] == null)
HttpContext.Current.Response.Redirect( "Login.aspx ");
}
}

热点排行