如何重定向到登录.aspx页面从全局.会话结束时asx

本文关键字:全局 会话 结束 asx 重定向 登录 aspx | 更新日期: 2023-09-27 18:01:23

我正在做一个asp.net c# webforms项目。我想重定向到登录。会话到期时,返回Aspx页。我有基于javascript的解决方案,可在互联网上工作得很好。然而,我希望它能在全球范围内工作。一个页面,以便代码将在一个地方。我试图从全局的Session_End事件重定向。由于没有响应和请求对象可用于此事件,因此无法工作。有一些引用使用Application_AcquireRequestState事件重定向到Session_end事件的另一个页面,但它也不起作用。如有任何帮助,不胜感激。

谢谢

如何重定向到登录.aspx页面从全局.会话结束时asx

自从我生活在。net世界以来已经有一段时间了,但据我所知,Session_End在服务器上触发时没有任何请求触发它。换句话说,当会话过期时,Session_End将触发。在那个时间点,您将没有请求。

同样,如果你需要移动到外部会话,Session_End不会触发:

https://blogs.msdn.microsoft.com/amb/2011/06/03/session_onend-or-session_end-events-in-global-asax-wont-fire-if-you-store-asp-net-sessions-out-of-proc-in-state-server-or-sql-server/

因此,您可能不希望首先依赖Session_End

由于您没有请求,因此无法从服务器进行重定向。你可以用在JavaScript中完成。但是如果你真的需要服务器将重定向"推送"到任何连接的客户端,你可以使用WebSockets来完成这一点。(但我认为这是个坏主意。)