.NET MVC 会话超时,即使在添加会话状态后也是如此

本文关键字:会话状态 添加 会话 MVC 超时 NET | 更新日期: 2023-09-27 18:30:24

application:

-.net MVC 3/c#/SQL Server 2008

问题:

  • 离开应用程序无人看管不超过5分钟后,必须再次登录。
  • 有时即使在应用程序内工作时,我也会在某个地方单击,它将我带回登录屏幕。
  • 没有出现任何类型的错误弹出窗口,只需再次登录即可。

我知道这篇文章有一些线程,但我想在我的 web.config 文件中添加我当前使用的代码。我尝试在里面添加会话超时标签,但问题仍然存在。

我没有粘贴所有代码,但我正在添加我认为与此问题相关的代码,如果我缺少其他内容,请告诉我。

这是我添加的:

<sessionState mode="InProc" timeout="200000"/>
         <customErrors mode="Off"/>
<authentication mode="Forms">
      <forms loginUrl="Login/Login">
      </forms>
    </authentication>
    <authorization>
      <deny users="?" />
    </authorization>

我还有什么遗漏的吗?我觉得添加 sesstionstate 行后没有任何变化。据我所知,没有会话状态行,默认值为 30 分钟,但我在此时间之前被踢出局。

我也看到了一些 sesstionstate 设置,其中超过了我添加的行,所以不确定我是否在那里遗漏了一些东西。

感谢您的任何建议。

.NET MVC 会话超时,即使在添加会话状态后也是如此

在 ASP.NET 中,会话超时和表单身份验证票证超时是不同的概念。这些值存储在不同的 Cookie 中,并且不相关。要增加超时,请参阅KB910443并尝试修改 web.config 的 <authentication> 标记,如下所示:

<authentication mode="Forms">
  <forms loginUrl="Login/Login" timeout="200000" slidingExpiration="true">
  </forms>
</authentication>

您是否自己实例化了身份验证票证? 然后检查那里的超时。

此外,您可以检查您使用 jQuery 是否空闲超时。