跟程序无关,系统的 bug
1. 改用 sqlserver 存 session
2. 改用 cache一般情况下,我们喜欢使用Session储存我们的变量。Asp.Net提供了下面一些方法储存Session的值: 
InProc State Server SQL Server “InProc”表示我们使用传统ASP一样的方法储存Session的值,而且“State Server”则表示使用另外一台主机来储存Session的值。当然我们也能使用SQL Server储存值,我们这篇文章就专门用于讲解这种方法。 运行InstallSqlState.sql文件 首先需要在Winnt\Microsoft.Net中找到InstallSqlState.sql文件,然后在SQL Server 中执行它。在我的机器中,它存在于E:\WINNT\Microsoft.NET\Framework\v1.0.2914\目录中。这个文件是微软自己提供的,里面有很全的SQL语句,大家放心使用。下图就是生成的数据表。 修改你的web.config文件,指定Session的mode为SQL Server 将web.config的sessionState部分改成: 
<sessionState mode="SQLServer" sqlConnectionString="data source= WIN2000;userid= sa;password=" cookieless= "false"timeout= "20" /> 
创建Asp.Net Web Forms 下面就建立一个测试的ASP.net程序,使用Session程序这里就不用多说了,下面是我的程序的截图。这个程序只是简单的储存一个字符串数据于Session中,然后再显示这个数据在Label控件中。 现在所有的Session变量都储存在数据表中,而不是内存中了。你可打开ASPStateTempSessions表来查看这些Session数据了。 
删除这些数据库和表 如果你不喜欢这个数据储存方式,看得实在是不爽,那么你可以把这些表和数据库完全删除掉。这个也不要担心这种删除会影响数据库(因为害怕误删除一些数据),因为微软同样也得供给你们一个删除SQL 文件,名叫UnintallSQLState.sql。它与IntallSQLState.sql一样放在.Net的Config目录中。 

解决方案 »

  1.   

    JiangSf(菜鸟,多多关照) :
       你好,用SQL存储session 有没有副作用??另外,能不能再说清楚一点??
    还有没有其他方法呢???
    “跟程序无关,系统的 bug ”确定吗??????????
      

  2.   

    OK521(拉登陪我打CS) : 
         你好,在本地,和在服务器上是一样的
      

  3.   

    JiangSf(菜鸟,多多关照) :
            在Server 2003上是不是改进了??问题是不是可以解决呢??如果可以,我就换系统 : )
      

  4.   

    一般应该不会出现这种情况,这可能你程序中有错误码,引起aspnet程序重起你把sessionState mode改为 状态服务器或是SQLServer试试看还会不会出现这个情况