2013-03-07 101 views
2

我有以下配置尝试允许会话保留大约239分钟,但会话在不到一个小时内丢失。MVC ASP.NET网站早于设置显示

<system.web> 
<sessionState mode="InProc" timeout="240" /> 
<compilation debug="true" targetFramework="4.0"> 
    <assemblies> 
     ... 
    </assemblies> 
</compilation> 
<authentication mode="Forms"> 
    <forms loginUrl="~/Account/LogOn" timeout="239" /> 
</authentication> 
<pages> 
    <namespaces> 
     ... 
    </namespaces> 
</pages> 

我不相信那里是任何C#代码覆盖这些设置。

有谁知道为什么会发生这种情况?

+0

当您使用是InProc会话上,很可能较早失去它。尝试将其移动到数据库。 – Aristos 2013-03-07 12:54:33

回答

3

您还有一个空闲超时默认情况下设置为20分钟的应用程序池进程的设置。每20分钟(如果没有活动),应用程序池将被重置,这也会丢弃任何活动的进程内会话。

enter image description here

+1

IIS设置已更改并经过测试确定 - 点谢谢完美答案 – user1444886 2013-03-07 15:28:24