1

我需要在会话超时时将用户重定向到登录页面。global.asax 中 Session_End 方法的问题是:

  1. 它不支持 Response.Redirect 或 Server.Transfer
  2. 任何使用 HttpContext.Current.Response 的尝试都会导致“对象引用未设置为对象的实例”错误
第二个错误是可以理解的,因为在会话超时时,当前会话将被终止并设置为空。
我想知道的是是否可以将用户直接(特别是)从 session_end 重定向到另一个页面。有些方法有效(不使用 session_end 方法),但它们都需要向服务器发出请求(例如刷新,我不想要)。我可以在不使用 javascript 的情况下执行此操作吗?(更重要的是,我应该这样做吗?)
提前致谢!

4

1 回答 1

1

Session_End 不是直接在服务器上提出的,没有用户的任何交互吗?

当我转到您的页面(并开始会话),关闭浏览器窗口并且永不返回时会发生什么?那么就可以理解了,那HttpContext.Current.Response就是null。

于 2013-04-01T07:36:13.850 回答