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

asp.net的session失效问题
a页面用session[ "aa "]   =   "aaa ";
b页面用label.text   =   (string)session[ "aa "];
居然没有保存上   ,b页面无法显示

我在另外一个解决方案里测试是可以的  
这个解决方案里不行  
我把web.config与能保存session的解决方案的web.config比较了,设置成完全一样的,仍然不行

我该到哪里找原因呢?

------解决方案--------------------
b页面无法显示?
debug yi xia
------解决方案--------------------
看看配置是不是禁用了session
------解决方案--------------------
刚才是要你跟踪一下Session
看到哪个地方出的问题
a页面有问题没?
在哪里丢失的

输入法坏了。。。

如果是.net2.0
我记得半年前就有个bug是
如果进行了对文件夹的删除(或者改名)
会造成Session的丢失

------解决方案--------------------
不是
是说代码中执行过这样的操作,如:
Session[ "a "]= "a ";
DirectoryInfo.Delete(or Move)( "c:\temp ")

会造成当前例程重启(好像是这样)
自然Session就丢失了

可能还有其他bug
------解决方案--------------------
如果是两个,就是SESSION没保存了呗~
------解决方案--------------------
我大胆地设想一下,你一个浏览器打开a.aspx页面,另一个浏览器打开b.aspx页面,这样肯定不行的。
如果是从a链接到b,还是null,那就看看IIS的设置,“网站”属性-〉允许Session
------解决方案--------------------
SESSION是保存同一个浏览器所产生的ID号的SESSION,不同浏览器所产生的ID号自然不同,当然不能识别为同一个SESSION