gpt4 book ai didi

c# - 在表单例份验证中获取当前的 MembershipUser

转载 作者:行者123 更新时间:2023-11-30 19:20:26 24 4
gpt4 key购买 nike

我想从我的页面获取当前的 MembershipUser

Membership.GetUser();

返回空值。

无法使用

HttpContext.Current.User.Identity.Name

因为它根据我的配置返回我的个人资料名称,以获取用户名。

如何获取当前用户?

更新:成员资格提供程序是 SqlMembershipProvider

最佳答案

  1. Membership.GetUser() 仅适用于经过身份验证的用户。否则,它将返回 null。要验证您正在处理经过身份验证的请求,请在页面上调用“User.Identity.IsAuthenticated”。如果您有一个经过身份验证的请求,但 Membership.GetUser() 仍返回 null,则这意味着在 Membership 数据源中找不到与经过身份验证的用户关联的用户名。使用“User.Identity.Name”验证经过身份验证的用户的用户名。

  2. 如果您正在调用 Membership.GetUser() 重载之一,它采用用户名并返回 null,则该用户不存在于 Membership 数据源中(或者我们遇到了错误)。轻松验证这一点的一种方法是尝试使用相同用户名的 Membership.CreateUser()。如果这不会因为重复用户而引发错误,那么您就知道该用户从一开始就不存在。

  3. Membership.GetUser() 不应该为匿名用户工作。 Membership 没有内置支持来处理这种情况。

关于c# - 在表单例份验证中获取当前的 MembershipUser,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6329181/

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