if (my.Session["UserID"] == null || my.Session["UserID"].ToString().Equals(""))
        {
            my.Response.Write("<script>alert('请重新登录系统!');parent.location.href='../../login.aspx'</script>");
        }
我写的的判断方法是上面的,  在登录页面成功登录后  Session["UserID"]赋个值,在每个页面中都用这个方法判断,但是感觉session老是过期,请问有何解决方法?谢谢     

解决方案 »

  1.   

    IIS 设置下 回收机制。这个设置成晚上固定时间,或者什么时候,我遇到类似的情况,就是这个问题。后台莫名其妙就退到登陆页面了。开始以为报异常,没发现问题。 
      

  2.   

    1、登录的时候有没有成功给Session["UserID"]设置值啊?
    2、记得要先写 赋值语句 后才到 页面跳转语句 哦,要不然不能赋值。
    3、或在界面写一条Respon.Write(Session["UserID"].ToString()); 测试显示什么值
      

  3.   

    我以前用asp做的页面也是这个问题,后来我用asp。net系统直接带的login控件,完美解决了这个问题
      

  4.   

    .net session丢失问题的解决:
    http://www.cnblogs.com/nick-fbx/archive/2008/11/14/1333244.html
      

  5.   

    Session  很不稳定的一般做项目最好不要用