我已经看到了一个类似的问题在这里发布:这里。我基本上有同样的问题,但是有一个小变化。
我正在尝试从Session_End方法中访问Session信息,但是当我到达那里时,HttpContext为null,所以我找不到任何真正的方法来获取它;就好像Session_End触发时它已经被完全清除一样。
相关问题中的解决方案说我可以使用this.Session
来引用我需要的会话信息,它访问Global继承自HttpApplication类的HttpApplication.Session
变量。但在我的应用程序中,我们重新定义了Session变量,看起来像这样:
public new static HttpSessionState Session
{
get
{
return HttpContext.Current.ApplicationInstance.Session;
}
}
对我来说,引用this.Session将尝试从HttpContext中获取信息,而HttpContext为null。
所以我想我有两个问题。首先,是否有一个事件在Session_End之前但在清除会话数据之前触发?其次,如果第一个问题的答案是否定的,是否仍有一种方法可以从Session_End访问该数据?
谢谢。