关于session及其失效的问题,网上讲了很多办法,对于我来说都没有任何作用。我决定放弃(我采用stateserver,timeout=40,由于内存的问题我不能将时间设得过长)
  因为session失效,使我的领导上下午各2个小时的工作全部白费。领导和我都很郁闷!!!!
  我的项目里有一个aspx页面,里面有一个千航科技的显示word的控件,由于用户在该控件里长时间(1个多小时)编辑word文档,致使该页面没有刷新,由于我将当前用户的信息在用户登陆页面里存入session("username")=this.TextBoxUserName.Text里,当用户存盘时需要读取该session,此时发生失效,所有工作全部泡汤!@
   我想到了用全局变量的方法,可是asp.net里好象没有。
   我想到了在一个aspx页面(getUserInfo.aspx)的设置一个全局的Lable:public ...Lable lable1;
然后Lable1.text=this.TextBoxUserName.Text;:
可是当我在别的页面如b.aspx.cs里输入:mynamespace.getUserInfo.Lable1.text,时系统提示不支持,即当我在mynamespace.getUserInfo后输入.根本没有自动弹出.Lable1(尽管我设置为public)。
   我想到了用一个类来存放该值,可是类也存在生命周期的问题,我不知道当用户登陆成功后将用户信息写入public类中,是否可以被项目内其他的页面调用(读取该类的值)
   请高手赐教!焦急等待中![email protected]

解决方案 »

  1.   

    我也碰到这样的问题。session在.net里面很容易失效,我后来就改用cookie了
      

  2.   

    你可以试试:
    为了防止常时间不刷新页面造成会话超时,这里写一段脚本,每隔一分钟向本页发送一个请求以维持会话不被超时,这里用的是xmlhttp的无刷新请求 
           // 这个方法在OnInit方法里调用 
           protected void XmlReLoad() 
           {      
               System.Text.StringBuilder htmlstr=new System.Text.StringBuilder(); 
               htmlstr.Append("<SCRIPT LANGUAGE=\"JavaScript\">"); 
               htmlstr.Append("function GetMessage(){"); 
               htmlstr.Append(" var xh=new ActiveXObject(\"Microsoft.XMLHTTP\");"); 
               htmlstr.Append(" xh.open(\"get\",window.location,false);"); 
               htmlstr.Append(" xh.send();"); 
               htmlstr.Append(" window.setTimeout(\"GetMessage()\",60000);"); 
               htmlstr.Append("}"); 
               htmlstr.Append("window.onload=GetMessage();"); 
               htmlstr.Append("</SCRIPT>       "); 
               if(!this.IsStartupScriptRegistered("xmlreload")) 
                  this.RegisterStartupScript("alert", htmlstr.ToString()); 
           }
    用cookie也不错
      

  3.   

    用cookie,或将session存入数据库
      

  4.   

    真郁闷!上午领导又找我了,说他今天的工作白干了!
    3楼qiaoxinwei(小新) 的方法,我下午再试试。能否给我发邮件!
    cooike不是也有失效问题吗,如果客户端禁止了cookie如何办
      

  5.   

    通过脚本定时把内容保存到文本文件里面,这样就算session失效了,也可以恢复的
      

  6.   

    这里有一个例子可以让SESSION不会丢失:http://www.codeproject.com/useritems/SessionForever.asp?df=100&forumid=298582&select=1734297&msg=1734297