我有3个页面web1.aspx;web2.aspx;web3.aspx;
web1.aspx中:private void Button1_Click(object sender, System.EventArgs e) {
if(this.TextBox1.Text=="111")
{ Session["UserName"]="admin";
Response.Redirect("WebForm3.aspx");
}
}
web2.aspx:Page_Load中:this.Label1.Text=Session["UserName"].ToString()
可一显示出Session中的东西;
web3.aspx:private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
if(!this.IsPostBack)
{
this.Label1.Text=Session["UserName"].ToString();
}
}
在web3.aspx怎么就显示不书Session的值admin;
很奇怪.以前从来都没遇到过这样的问题.
有谁知道的.在线等
在线等!!!!!!!!!!!!!!!!!!!!

解决方案 »

  1.   

    在Global.asax.cs文件中的Session_Start事件下:protected void Session_Start(Object sender, EventArgs e)
    {
    Application.Lock();
    Session["UserName"]=null;
    Application.UnLock();}
    再将this.Label1.Text=Session["UserName"].ToString();改成如下:if (Session["UserName"]!=null)
    {
       this.Label1.Text=Session["UserName"].ToString();
    }
      

  2.   

    晕,楼主先看清楚页面上有没有Label1这个控件,不要看错啦:
     this.Label1.Text="aaaaa";
    试试先,好像Session["UserName"].ToString()没什么问题,不要犯低级错误啦
      

  3.   

    TO:
    错误提示;:未将对象引用设置到对象实例!我觉得可能就是因为Session["UserName"]=null,而你去ToString(),这样肯定会出错的..所以先作个判断...
      

  4.   

    在web2.aspx中可以读出session的内容.到了web3怎么就不行了呢.
    liujia_0421() 说的很对.Session["UserName"]就是为null,在ToString()一下就绝对出问题了.
      

  5.   

    Response.Redirect("WebForm3.aspx");
    WebForm3.aspx名字真确吗?
    你不是三个吗
    第三个是web3.aspx啊
      

  6.   

    在web3.aspx<% Page......后面检查下EnabledSessionStute是否为false%>
    改为readonly试试看