如何最好地检测ASP.NET过期会话?

我需要在我的Visuial Basic Web应用程序中检测会话何时到期。这就是我正在使用的...

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

    If CurrentSession.IsNew AndAlso (Not Page.Request.Headers("Cookie") Is Nothing) AndAlso (Page.Request.Headers("Cookie").IndexOf("ASP.NET_SessionId") >= 0) Then
        Response.Redirect("TimeOut.aspx")
    End If

    ...do something...

End Sub

Note: CurrentSession.IsNew returns HttpContext.Current.Session.IsNewSession

对于 Internet Explorer ,这看起来效果不错,但似乎无法使用 Firefox

0
我目前只使用global.asax文件中的Application_Error事件。也许我的会话处理也属于那里。但是,如何在请求的页面加载上使用它?
额外 作者 Zack Peterson,
你可以使用Global.asax中的Session_End函数吗? http://articles.techrepublic.com.com/5100-10878_11-5771721。 H‌ TML
额外 作者 Michael Stum,

1 答案

尝试以下操作

If Session("whatever") IsNot Nothing Then
0
额外