为什么我可以创建新用户,但是当我立即尝试使用他们的凭据进行身份验证时,我会失败?

时间:2009-12-11 16:38:22

标签: asp.net-membership

我创建了一个新用户,批准了他们,然后立即尝试使用我刚创建用户的凭据验证 ...并获得“false”返回Authenticate方法。

string username = "me";
string password = "mypassword";
string email = "me@domain.com";

Membership.CreateUser(username, password, email);

currentUser = Membership.GetUser(username);
currentUser.IsApproved = true;

bool isAuthenticated = FormsAuthentication.Authenticate(username, password);

我检查了数据库表 - 用该用户名,密码和电子邮件创建了用户。根据数据库表,它们已被批准。

然而,Authenticate方法仍然返回false。

2 个答案:

答案 0 :(得分:0)

更改批准状态后,您需要调用UpdateUser方法...

   Membership.UpdateUser(currentUser);

http://msdn.microsoft.com/en-us/library/system.web.security.membershipuser.isapproved.aspx

答案 1 :(得分:0)

可能认证机制正在使用尚未级联的不同数据存储。