2011-02-11 57 views
0

我有这个问题,你可能知道答案...我的应用程序已经正常工作,并且工作正常。每当用户对应用程序进行身份验证时,都会使用LastLoginDate更新其模型,并且当用户注销应用程序时,会使用LastLogOutDate更新其模型。当用户不断点击注销链接时,此工作正常。但是,如果用户关闭窗口,则LastLogOut值永远不会更新,并且管理员看到的用户不在线。同样的事情发生在用户离开工作在其他地方并且.NET失去会话时打开的标签。MVC结束会议

我没有管理会话时间,也没有像这样的任何值。我需要做的只是:如果过了一段时间没有用户活动,那么定期更新LastLogOut值并将其设置为在其模型中脱机。如果用户关闭该窗口,则相同,但我认为第一种情况将以两种方式工作。

我希望你能给我一只手在这个问题上,

感谢。

回答

0

您将需要一个可追踪LastActivityTime是大干快上的任何GET/POST更新,也(可能配置)超时,说20分钟,在用户显示登录时会比较LastActivityTimeDateTime.Now,只返回那些内即超时窗口。

无论何时显示给管理员,您还可以将LastLogOutDate设置为LastActivityTime加上超时。