C# asp.net mvc会话超时

C# asp.net mvc会话超时,c#,asp.net-mvc-2,c#-4.0,session-timeout,C#,Asp.net Mvc 2,C# 4.0,Session Timeout,如何为asp.net mvc应用程序实现会话超时功能?我希望用户在给定时间段内检测到不活动时自动注销 我可以实现ActionFilterAttribute并应用于每个方法,但这不会自动注销用户。只有当用户尝试调用该操作的方法时,它才会注销 谢谢。这是因为会话是在服务器端维护的。如果你想让用户浏览器中的空闲页面自动注销,你必须为它编写一些javascript。您可以使用ajax请求检查会话是否已过期,并根据结果将用户重定向到索引(登录或任何其他不需要身份验证的页面)您应该能够从web.config

如何为asp.net mvc应用程序实现会话超时功能?我希望用户在给定时间段内检测到不活动时自动注销

我可以实现ActionFilterAttribute并应用于每个方法,但这不会自动注销用户。只有当用户尝试调用该操作的方法时,它才会注销


谢谢。

这是因为会话是在服务器端维护的。如果你想让用户浏览器中的空闲页面自动注销,你必须为它编写一些javascript。您可以使用ajax请求检查会话是否已过期,并根据结果将用户重定向到索引(登录或任何其他不需要身份验证的页面)

您应该能够从web.config管理此操作:

<system.web>
    <sessionState timeout="x"/> 
    ...
</system.web>

...
我不是MVC专家,但在ASP.NET中推出的这种行为的改变并不是我所期望的

这也可以使用IIS管理应用程序进行配置;不确定您使用的是哪个版本的IIS,但即使在旧版本(IIS7之前)中,哪些应该易于遵循。请注意,在幕后,此方法仍然管理web.config文件中的设置,因此,如果这是版本控制的,我不建议以这种方式更改它