类的会话变量

时间:2014-03-19 11:03:18

标签: c# asp.net visual-studio-2008 casting

对不起,这是我的第一篇文章,我收到了这个错误

  

“错误1无法将类型'对象'隐式转换为'UserData'   存在显式转换(您是否错过了演员?)“

我认为是因为我试图将我的会话变量更改回我的对象​​,但我不知道如何做到这一点,这里是将对象更改为会话变量的代码:

protected void Page_Load(object sender, EventArgs e)
{
    UserData temp = new UserData();
    temp = Session["userSesh"];
    if(temp.returnLoggedIn())
    {
        Label1.Text = "Welcome to the website " + temp.getUsername().ToString();
    }

userSesh是使用以下代码制作的:

            if (username == row["username"].ToString() && password ==      row["password"].ToString())
        {
            UserData user1 = new UserData();
            user1.setUsername(username);
            user1.setLoggedIn(true);
            Session["userSesh"] = user1;
            Response.Redirect("default2.aspx");

提前谢谢

3 个答案:

答案 0 :(得分:3)

尝试以这种方式将会话转换为UserData,

temp = Session["userSesh"] as UserData;

答案 1 :(得分:0)

投射并设置

UserData temp=(UserData)Session["userSesh"];

答案 2 :(得分:0)

尝试将会话转换为UserData

temp = (UserData)Session["userSesh"];