10

我正在为用 C# 编写的 ASP.NET 应用程序在 Web.Config 中修改会话超时,目前我将超时设置为 120 分钟,如下所示:

<sessionState mode="InProc" cookieName="Application_SessionId" timeout="120"/>

这个值有限制吗?因此,例如,如果我希望将其设置为 24 小时(1440 分钟),这是否适用?

它是带有 MVC 2.0 的 ASP.NET 4.0 版

4

3 回答 3

22

Timeout 属性不能设置为大于 525,600 分钟(1 年)的值。默认值为 20 分钟。

缺点:如果您有大量用户,您将遇到性能问题,并且随着会话超时的增加,您的非活动会话将保留在 Web 服务器内存中,这可能会导致应用程序池回收,从而导致所有用户的所有会话丢失。

于 2014-01-14T13:56:48.620 回答
7

默认值为20,最大值为525600525600分钟相当于一年)。在您的Web.config文件中维护以下代码以维护最大会话超时:

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

以上一个对我有用。请参考这里

于 2017-06-30T06:22:55.010 回答
4

我不确定将会话超时设置为 24 小时是否有意义,但是是的,我认为将其设置为最多 365 天是适用的。

于 2013-07-18T10:04:19.590 回答