我的Session会不定时丢失,我现在不想用Session,大家有好的替代方案吗?比如何存当前用户的登录信等

解决方案 »

  1.   

    用Cookie 了http://chs.gotdotnet.com/quickstart/util/srcview.aspx?path=/quickstart/aspplus/samples/apps/cookies1/cookies1.srchttp://chs.gotdotnet.com/quickstart/util/srcview.aspx?path=/quickstart/aspplus/samples/apps/cookies2/cookies2.src
      

  2.   

    Cookie替代Session应该比较好了。
    不过你以可以用Cache吧;
      

  3.   

    用Cache 要暂用服务器资源 如果用户太多 就
      

  4.   

    Cache 一样可以定义过期时间,比较灵活。也可以改进系统的性能。 动态数据的大型网站很多都涉及Cache和XML
      

  5.   

    cache 主要是每个用户都要分配一个独立的Key啊
      

  6.   

    Cache 可以缓存三种对象, 
    1.整个Page.
    2.一个用户控件.
    3.API缓存(这种独立分配Key的)
    详细的到MSDN就有介绍了.
      

  7.   

    建议您还是检查一下服务器状态, 服务器状态有问题的话 Session不能正常工作,难保其他的都能正常工作。
      

  8.   

    通过form验证后,FormsAuthenticationTicket 可以包含加密后的用户名和角色信息。可以用cookie实现,也可以不用.(web.config文件里设置)
      

  9.   

    其实应该看你自己的项目情况决定要用什么东东。
    如果只有几个Session 要替换的话用Cookie,不止几个的话就自己考虑衡量了。
      

  10.   

    Cookies 会出现客户关闭浏览器,但是登录状态还会存在啊
      

  11.   

    过时问题是个老问题了,看看这个,看有没有帮助
    http://www.cnblogs.com/hedonister/archive/2005/05/13/154788.html
      

  12.   

    Session基本满足需要了。cookies禁用的多。
      

  13.   

    1、改成使用cookie2、把<sessionState 
                mode设置成StateServer就ok了,我也不知道什么原因。
     <!--  会话状态设置
              默认情况下,ASP.NET 使用 Cookie 来标识哪些请求属于特定的会话。
              如果 Cookie 不可用,则可以通过将会话标识符添加到 URL 来跟踪会话。
             若要禁用 Cookie,请设置 sessionState cookieless="true"。
        -->
        <sessionState 
                mode="StateServer"
                stateConnectionString="tcpip=127.0.0.1:42424"
                sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes"
                cookieless="false" 
                timeout="40" 
        />3、使用SqlServer保存Session4、让杀毒软件不扫描bin文件夹下的文件和Web.Config文件 。5、定时刷新页面,不让Session丢失。