【问题标题】:Changing the default value of session's variable timeout in asp.net mvc在 asp.net mvc 中更改会话变量超时的默认值
【发布时间】:2013-07-18 11:37:40
【问题描述】:

我有一个带有 razor 视图引擎的 Asp.net Mvc 应用程序,其中我使用了一个变量 Session['user']:当用户登录应用程序 Session['user'] = login 并在注销时此变量作为值 Null

问题是有一个短暂的超时并且会话变量过期:如果我在自动登录应用程序Session['user'] =null 后一分钟内什么都不做。

那么如何设置会话变量的超时时间,直到它被程序更改?有什么建议吗?

【问题讨论】:

    标签: c# asp.net .net asp.net-mvc razor


    【解决方案1】:

    那么如何设置会话变量的超时时间,直到它被程序更改?有什么建议吗?

    您不能将timeout 值设置为无限制。

    您可以使用 web.configsessionState 元素的 timeout 属性增加超时值(以分钟为单位)。


    会话状态设置

    默认情况下,ASP.NET 使用 cookie 来识别哪些请求属于特定会话。 如果 cookie 不可用,可以通过将会话标识符添加到 URL 来跟踪会话。 要禁用 cookie,请设置 sessionState cookieless="true". (120 = 分钟)

    <sessionState mode="StateServer" cookieless="false" timeout="120"/>
    

    看看这个Session-Time out

    【讨论】:

      【解决方案2】:

      您不能将其分配给无限。您可以使用web.config中的会话状态元素的超时属性以分钟为单位增加值

      <sessionState timeout="30">
      </sessionState>
      

      默认会话超时值为 20 分钟。同样在您的情况下,如果您使用表单身份验证,请检查身份验证超时值

      <authentication mode="Forms">
         <forms loginUrl="logon.aspx" 
         protection="All" path="/" timeout="30" />
      </authentication>  
      

      【讨论】:

        【解决方案3】:

        这是会话的超时,而不是变量。在几分钟内将其设置在配置中

        <sessionState timeout="30" />
        

        【讨论】:

          【解决方案4】:

          无法将会话超时设置为无限制。
          而是将会话超时设置为较高的值。
          示例:

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

          【讨论】:

            【解决方案5】:

            我之前也遇到过类似的问题,这与会话超时值无关。因此,有时它现在是关于超时时间的。此会话超时可以设置为 20 分钟或更长时间,但如果托管服务器或您的计算机在 MEMORY非常低。然后清除会话值,用户有时必须再次登录。

            这种低内存有时是由 STORING IMAGESBINARY VALUES 在数据库中而不是作为文件存储在服务器上并使用 System.IO.File 过程访问它们引起的.因此,当您尝试获取一些记录时,它们在 TABLE 上的 IMAGES DATA 也将被获取,从而导致性能显着降低以及可用内存的过度消耗。

            可能是您的计算机或主机内存不足(不是存储空间)

            希望这会有所帮助。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 2010-11-03
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2011-09-29
              • 2010-10-26
              • 2015-12-19
              相关资源
              最近更新 更多