我目前在ASP.Net身份验证方面遇到了一个奇怪的问题.请考虑以下两行:
MembershipCreateStatus ct = new MembershipCreateStatus();
Membership.CreateUser("admin", "mypassword", "test@gmail.com", "1", "1", true, out ct);
Run Code Online (Sandbox Code Playgroud)
这会在我的数据库中注册我的用户.我已经证实了这一点.但是,当我在之后立即运行时:
FormsAuthentication.Authenticate("admin", "mypassword");
Run Code Online (Sandbox Code Playgroud)
身份验证失败.奇怪的是我知道用户确实存在于db中,如果我运行则进一步确认
MembershipUserCollection uc = Membership.FindUsersByName("admin");
Run Code Online (Sandbox Code Playgroud)
和uc确实拥有我的管理员用户所有正确的信息.有关为什么Authenticate会返回false的任何想法或提示?