注册 登录
编程论坛 ASP.NET技术论坛

为什么 获取 session 为 null ?

sw4433 发布于 2010-06-18 17:07, 1522 次点击
按钮点击代码
protected void Button1_Click(object sender, EventArgs e)
{
    ......前面省略
    string name = this.name.Text.Trim().ToString();
        string accountPassword = this.accountPassword.Text.Trim().ToString();
        string email = this.email.Text.Trim().ToString();
    Session["name"] = name;
                        Session["accountPassword"] = accountPassword;
                        Session["email"] = email;
                        Response.Redirect("registerSuccess.aspx");
}

在另外一个页面( registerSuccess.aspx )获取出错
public partial class registerSuccess : System.Web.UI.Page
{
    private DataSet ds = new DataSet();
    private SqlDataAdapter dataAdapter = new SqlDataAdapter();
    private EcrdCardInfoDAO cardInfoDAO = new EcrdCardInfoDAO();
    private EcrdCardDAO cardDAO = new EcrdCardDAO();

    protected void Page_Load(object sender, EventArgs e)
    {
        string email = Session["email"].ToString();//我用了断点,这里显示email为空,为什么?
        ds = cardInfoDAO.SelectByEmail_EcrdCardInfo(email);
        if (ds == null)
        {
            dataAdapter.Fill(ds, "t1");
            GridView1.DataSource = ds.Tables["t1"];
            GridView1.DataBind();
        }
        else
        {
            string name = Session["name"].ToString();
            ds = cardDAO.SelectByName_EcrdCard(name);
            dataAdapter.Fill(ds, "t1");
            GridView1.DataSource = ds.Tables["t1"];
            GridView1.DataBind();
        }

    }
}
3 回复
#2
misswang2010-06-18 18:43
估计你是先运行的后面的页面,所以你应该先定义一个用户与角色管理,或者根据Session是否为Null来判断。。。。
#3
冰镇柠檬汁儿2010-06-21 10:02
为"" 还是为null?这个很重要。
再有你是不是session超时,造成了session失效了?
#4
hebingbing2010-06-21 11:52
也有可能是禁用了session
1