日期:2014-05-19  浏览次数:20356 次

session 清空问题.................简单,马上给分........................
protected   void   Page_Load(object   sender,   EventArgs   e)
        {
                if   (Session[ "loginAdmin "]   ==   null)
                {

                        Response.Write( " <script> alert( '没有登录 ');top.opener=null;top.close(); </script> ");

                }
                  if   (Session[ "loginAdmin "]   !=   "yeslogin ")
                {

                        Response.Write( " <script> alert( '没有登录 ');top.opener=null;top.close(); </script> ");

                }

      .............session验证后   才运行的代码..............

}            


-----------------------------------
我明明在logout页面清空了session.   但是我在浏览器打上   包含   以上代码   的   页面..判断不了   session   已经是空.   要刷新一下才   跳出   "   没有   登录 "  

是我   做的   session     判断有问题吗?(以上的代码)

谢谢~~~~

------解决方案--------------------
缓存问题.
------解决方案--------------------
可能是缓存的问题 Page_Load中加上 Response.Cache.SetCacheability(HttpCacheability.NoCache);
------解决方案--------------------
还有就是你的程序无需做两个判断.一个就够了.
if (Session[ "loginAdmin "] != "yeslogin ")
{

Response.Write( " <script> alert( '没有登录 ');top.opener=null;top.close(); </script> ");

}

------解决方案--------------------
真是搞不懂你怎么写的代码!怎么可能不可以清空了。每个页面判断Session值为Null重定向到登录页嘛`
其实不要用这种方法来做,很麻烦. 可以用下Forms验证
config里面配置 <authentication mode= "Windows "/>
写点点代码就ok了!免得每个页面去判断session
------解决方案--------------------
LS正解。ASP.NET提供这么好的特性应该好好利用。
------解决方案--------------------
恩 缓存问题 cpp正解