![](/img/trans.png)
[英]Membership.GetUser() // GetUser(userName) returns a null user
[英]User exists in aspnet_membership table but getUser still returns null
在我的数据库中,我有表aspnet_membership。 在应用程序中,我正在实现忘记密码功能。 当用户使用此功能时,显然他没有登录。因此,用户输入了自己的电子邮件地址,但他忘记了密码,因此在我的代码中,我尝试通过执行以下行来获取正确的MembershipUser对象码:
var user = Membership.GetUser(username);
在测试时,我输入了现有的电子邮件地址,但函数GetUser仍返回null。 通过检查表的内容,我确定电子邮件地址存在。 我不知道是什么原因导致我仍然返回空值。 谁能告诉我为什么在这种情况下GetUser返回null?
因为用户名实际上没有存储在aspnet_membership表中(假定默认实现),所以用户名位于aspnet_users
。
我会尝试执行以下操作,看看是否能得到结果:
declare @email nvarchar(50)
set @email = N'whateveremailyouarehavingproblemswith'
select *
from aspnet_membership m
inner join aspnet_users u on m.userId = u.userId
where m.email = @email
and u.username = @email
如果此查询未返回任何内容,则说明您的用户名和电子邮件地址不匹配,或者该用户确实不存在。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.