1

我知道你可以这样做来获取当前用户的用户 ID

(Guid)Membership.GetUser().ProviderUserKey;

但这会进行数据库查找。有没有办法在没有数据库查找的情况下获取当前用户的 GUID,可以从 auth cookie 中确定吗?

4

1 回答 1

1

很不幸的是,不行。Membership.GetUser() 调用使用“用户名”进行此查找。

auth cookie 仅包含此用户名(以及一些其他详细信息,例如问题和到期日期)

如果这是您真正需要的东西,您可以查找一次,并将其存储在 cookie 的 UserData 属性中 -以编程方式更改 FormsAuthenticationTicket 中的用户数据

于 2013-10-15T05:07:24.950 回答