gpt4 book ai didi

asp.net - 即使注销后,MembershipUser.IsOnline 也为 true

转载 作者:行者123 更新时间:2023-12-02 07:00:20 26 4
gpt4 key购买 nike

我目前正在使用 Visual Studio 2010 创建一个网站。我使用 SQL Server 2008 中的默认成员资格架构进行用户身份验证。现在我面临以下问题。

当用户注销时,该用户的membership.IsOnline 属性应设置为false。然而这并没有发生;该用户的membership.IsOnline 属性仍然为true。

我使用 LoginStatus 控件向用户提供注销链接。

我尝试关注 User.IsOnline = true even after FormsAuthentication.SignOut() 。但没有结果。

最佳答案

据我所知,FormsAuthentication.SignOut与成员(member)制度没有直接关系。因此,您必须按照问题中提到的方式手动更新 LastActivityDate 。并使用Membership.UserIsOnlineTimeWindow而不是-2。

来自 MSDN

The UserIsOnlineTimeWindow property value is checked during the call to GetNumberOfUsersOnline. If the LastActivityDate for a user is greater than the current date and time minus the UserIsOnlineTimeWindow value in minutes, then the user is considered online. You can determine whether a membership user is considered online with the IsOnline property of the MembershipUser class.

MembershipUser user = Membership.GetUser(false);

FormsAuthentication.SignOut();

user.LastActivityDate = DateTime.UtcNow.AddMinutes(-(Membership.UserIsOnlineTimeWindow + 1));
Membership.UpdateUser(user);

关于asp.net - 即使注销后,MembershipUser.IsOnline 也为 true,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10467880/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com