0

我想在用户会话过期时运行一些数据库处理,但我需要知道会话过期的用户是谁。

我正在考虑简单地设置Session["CurrentUserId"]登录时可以在会话到期时访问,但认为可能有一种方法可以直接从会话中获取 HttpContext.User.Identity?

4

1 回答 1

0

好吧,看看 MSDN 上的类定义,看起来你不能直接从 Session 的属性/成员中访问它。

但是,它们都是同一个对象的属性,在您的情况下将是当前的 HttpContext。因此,当会话针对一个上下文(理解:一个 http 请求)结束时,上下文的当前用户与您正在寻找的用户相同。

否则,您始终可以使用存储在缓存中的哈希表,其中键是Session.SessionId,值是用户身份。

于 2013-10-03T08:33:26.067 回答