在会话变量中使用类

时间:2013-04-23 22:38:45

标签: asp.net session-variables

我试图将一个类存储为会话变量。

我有一个名为“SVars.cs”的App_Code页面,旨在使用get和set保存各个页面的所有会话变量。

例如:

public static int Account { 
    get { return (string)HttpContext.Current.Session["Account"];} 
    set { HttpContext.Current.Session["Account"] = value; } 
}

这允许我通过以下命令访问Account:

SVars.Account = "TestUser";
Test.Text = Svars.Account;

现在,我的问题是,当我将一个Class存储为会话变量时,有没有办法做到这一点?

似乎我可以存储该类,但是如果我使用整个类而不是类中的任何函数或变量,我只能使它工作。因此,一个选项是创建类的新实例然后将其保存。但是,在我的一些页面上,这尤其笨重。

public static myClass Compass {
    get { return (myClass)HttpContext.Current.Session["Compass"]; } 
    set { HttpContext.Current.Session["Compass"] = value; } 
}

我希望能够直接访问myClass的成员并影响他们。

像:

SVars.Compass.angle = 34;
SVars.Compass.calculate();
Textbox.Text = "The direction is " + SVars.Compass.direction;

等 但是,当我尝试这个时,我收到一个错误:

  

非静态字段,方法或属性'SVars.Compass.get'

需要对象引用

0 个答案:

没有答案