去web.config里改:<sessionState 
            mode="InProc"
            stateConnectionString="tcpip=127.0.0.1:42424"
            sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes"
            cookieless="false" 
            timeout="改这里.以分钟为单位" 
    />

解决方案 »

  1.   

    <system.web>
    ......
    <sessionState mode="InProc" timeout="60"></sessionState>
    </system.web>以上把timeout过期时间改成60分钟。
      

  2.   

    system.web>
    <sessionState mode="InProc" timeout="60" ></sessionState>
    </system.web>
      

  3.   

    通过IIS里面的管理工具也可以修改,不过最终还是修改的配置文件,只不过方便一点而已
      

  4.   

    老大 ,我想通过续时方式,
    是这样的,
    用户开了页面,在客户端搞个定时器 定时(比如3分钟 )AJAX方式向 服务器发出“我还在,没走呢”;
    然后就在服务端给它 续时 可我不知 续时 的代码怎么写。
      

  5.   

    IIS的影响很大,比如定期10分钟就 清空应用池,<sessionState mode="InProc" timeout="60" ></sessionState> 这个也没效果的
      

  6.   

    可以在IIS里修改应用程序配置的启用会话超时的时间.
    或ASP.NET配置设置的状态管理中的会话超时.
      

  7.   

    不知道你的续时是什么意思?如果是保持session的话那你把session的时间设置大于3分钟即可。至于你的页面为何跑到登录?看看你的session存在那了?
      

  8.   


    是不是要搞用户在线状态监测ajax+applicationapplication存储在线列表,ajax定时访问某个服务
      

  9.   

    Session.Timeout = 20;//20分钟超时
    有可能还有浏览器的问题,你可以试试
      

  10.   

    楼主,如果你是用IIS作为web服务器,楼上几个小弟说的方法是不管用的,
    还需要设置应用程序池的属性,
    具体步骤如下:1、设置IIS:启动IIS管理器->应用程序池->右键->属性->性能->空闲超时
         默认值:20,可改为1440(单位:分钟);
    2、设置你要修改的站点:Web站点虚拟目录->属性->ASP.net->编辑配置->状态管理->会话超时
         默认值:20,可改为1440(单位:分钟);