有没有办法从静态上下文中获取Session对象?

时间:2009-12-16 10:45:58

标签: c# asp.net session

我在C#/ ASP.NET项目中。我希望能够从静态上下文中获取Session对象(HttpSessionState)的句柄。有没有办法这样做?

4 个答案:

答案 0 :(得分:2)

听起来你正在寻找: -

var sess = HttpContext.Current.Session;

答案 1 :(得分:2)

是的,Current上的HttpContext属性是静态的,因此:

System.Web.HttpContext.Current.Session

将从静态上下文返回当前会话(但必须在HTTP上下文中,否则Current将为null)。

答案 2 :(得分:2)

试试这个:

    private static new HttpSessionState Session
    {
        get { return HttpContext.Current.Session; }
    }

然后从另一个静态函数中,您可以将其称为

var myObj = Session[myKey];

就像你常规的非静态代码一样。

答案 3 :(得分:1)