目的:用session存储用户名信息,当session生命周期结束以后,网页跳转。
代码在最后,这样的代码不在框架页中正常实现,可是放到frameset中任何一个网页,就会跳location.href,执行下面的命令,明显是要报错(未将对象引用设置到对象的实例)。请问怎样让它不运行下面语句,if条件不满足即跳转? 
我试过把if语句去除,就是第一条就执行跳转命令,都不成功。
唯一成功的方法是把跳转后面的语句全部放到else中,可以这样对我程序其他地方又有影响。
请问为什么会这样if (Session["Uname"] == null)
        {
            Response.Write("<script type='text/javascript'>alert('登录信息不存在');top.location.href='http://www.baidu.com'</script>");        }
Label1.Text = Session["Uname"].ToString();
Response.Writesession

解决方案 »

  1.   

    Session["Uname"] == null?再来个&& session[].value!=""试试?
      

  2.   

    string u = "";
    try { u = Session["Uname"].ToString(); } catch { }
    if (u == "")
    {             
        Response.Write("<script type='text/javascript'>alert('登录信息不存在');top.location.href='http://www.baidu.com'</script>");           

    Label1.Text = u;
      

  3.   

    你需要首先在一个没有FrameSet的页面上先把Session["Uname"]写入值,然后才能转入一个有FrameSet的页面。