Wil*_*Joe 11 asp.net asp.net-mvc asp.net-membership asp.net-profiles
在asp.net中(使用MVC,但这也经常发生)
Profile.GetProfile(username);
Run Code Online (Sandbox Code Playgroud)
将更新该用户的LastActivityDate.当其他人正在查看该用户的个人资料时,无意这样做.
在成员资格类中,您可以指定是否使用第二个参数更新此日期,如下所示:
Membership.GetUser(username, false); // doesn't update LastActivityDate
Membership.GetUser(username, true); // updates LastActivityDate
Run Code Online (Sandbox Code Playgroud)
无论如何在没有编写我自己的提供者的情况下在Profile提供者中做类似的事情?
您可能会使用一个丑陋的解决方法,其中包括更改aspnet_Profile_GetProperties存储过程.这个负责在访问用户配置文件时获取属性.
打开此过程,您将在底部找到以下代码:
IF (@@ROWCOUNT > 0)
BEGIN
UPDATE dbo.aspnet_Users
SET LastActivityDate=@CurrentTimeUtc
WHERE UserId = @UserId
END
Run Code Online (Sandbox Code Playgroud)
删除它以停止更新LastActivityDate.LastActivityDate打电话时,您仍会得到更新Membership.GetUser(username, true);.
| 归档时间: |
|
| 查看次数: |
1502 次 |
| 最近记录: |