ASP.NET MVC应用程序超时不起作用

1 asp.net-mvc session timeout web-config session-state

在我的Web.config文件中,我一直在尝试设置会话超时.我使用了以下代码:

<configuration>
   <system.web>
      <sessionState timeout="1"></sessionState>
   </system.web>
</configuration>
Run Code Online (Sandbox Code Playgroud)

当我运行应用程序时,超时仍设置为默认的20分钟.试图找出设置不适用的原因.请帮忙!谢谢!

Dar*_*rov 5

不要混淆ASP.NET会话超时(这是您设置的)和表单身份验证 cookie超时,这是完全不同的并由<forms>标记控制:

<authentication mode="Forms">
  <forms
    loginUrl="/login"
    timeout="1" />
</authentication>
Run Code Online (Sandbox Code Playgroud)

ASP.NET会话使用cookie来跟踪用户(它与身份验证无关),并将其唯一ID与存储在服务器上的哈希表相关联.另一方面,表单身份验证是一种在ASP.NET中跟踪经过身份验证的用户的方法.它使用cookie,但它是一个与ASP.NET会话不同的cookie.