如何在对象中保存会话变量?

时间:2012-05-20 18:17:07

标签: c# asp.net session

我有以下会话变量:Session["UserId"];

如何在类和公共变量中保存此变量?像这样:

public class UserDC
{
    //public static Session UserId = Session["UserId"] 
}

我只想打电话:UserDC.UserId

2 个答案:

答案 0 :(得分:6)

这是你在找什么?

public class UserDC
{
    public static string UserId
    {
        get
        {
            if(HttpContext.Current.Session["Test"] != null)
                return HttpContext.Current.Session["Test"].ToString()
            else 
                return "";
        }

        set
        {
            HttpContext.Current.Session["Test"] = value;
        }
    }
}

修改

为了在静态属性或静态方法中获取Session变量,您必须实际执行以下操作,因为HttpContext.Current是静态的:

HttpContext.Current.Session

答案 1 :(得分:0)

public static string UserId
{
   get
   {
      return (string)Session["UserId"];
   }
}