我的asp.net中有几个session值需要用户在开IE时候长时间保存,由于用户操作的时间较久(经常在一处进行编辑要1小时左右),这样久出现session中的值没有了(应该是超过了生存期限吧),结果网页报错,怎么处理啊?   我也知道一种折中的方式,就是在页面中将session的值赋值给变量,利用变量保留起来,但是这样session中的值在进行页面切换的时候还是不能得到保留,其他的赋值方式我也尝试过,显得不怎么好,大家有没有方法设置session中值只要IE不关闭就一直保留啊?

解决方案 »

  1.   

    同意孟子的意见
    用Cookie比较合适
    可以设置Expire = 0
    就是关闭浏览器就失效
      

  2.   

    么错,象你所描述的现象还是用cookie比较合适,关闭浏览器自动消失,帮你顶一下吧!
      

  3.   

    对啊,用cookie不就好了.
    或者在web.config里面把session的时长设置成两个小时.
      

  4.   

    如果只是时间的问题~~那在web.config中把session设置一个很长时间也行啊~
      

  5.   

    Session设置太长时间反倒不好想想N个用户同时登陆那服务器要保存N×Session大小2个小时,吃不消的!
    还是塞给客户那边保存把
      

  6.   

    放置一个隐藏页面自动刷新Session,就可以保持~
      

  7.   

    同意用cookie,不仅操作简单而且香甜可口
      

  8.   

    人家说的是session的问题,不是cookie的问题
      

  9.   

    虽然是Session问题,但是解决最好的就是Cookie或者Application.
      

  10.   

    <sessionState mode="InProc" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes" cookieless="false" timeout="3600"/>在web.config里找到timeout
    然后把它改大,
    默认是20分钟
      

  11.   

    我也同意用Cookie保存比较好。
      

  12.   

    如果客户端不支持cookie怎么办?另外有些涉及到用户登陆信息,不是可以打开cookie就可看到你怎么保存的吗,好像有点不安全
      

  13.   

    欧也遇到过这样得问题,偶改web.config也不行,session的生存期可能与服务器的性能有关
      

  14.   

    还有个方法!!
    在Session的失效处理中将该变量的值从新复制到新的Session变量中,同时把SessionID也手动转来!
    过程要复杂点!但是可以实现的!!自己试试看啊!!
      

  15.   

    我也同意用Cookie保存比较好。
      

  16.   

    在web.config中把session设置一下,或用Cookie
      

  17.   

    有类似问题,为什么在web.config里设置timeout会没有用?
      

  18.   

    Cookie 到底好不好啊?郁闷的很啊!!!!!
    Cookie怎么用撒?我试验一下,而且我也有用户登陆啊,是不是不安全 啊?真的是不爽啊,网页程序还是没有应用程序编起来爽,ft