我的代码中有以下代码:
if (Membership.ValidateUser(username, password))
{
bool status = System.Web.HttpContext.Current.User.Identity.IsAuthenticated;
我的用户名和密码验证正确,但状态始终为假。我如何实际登录用户以使状态为真?
我的代码中有以下代码:
if (Membership.ValidateUser(username, password))
{
bool status = System.Web.HttpContext.Current.User.Identity.IsAuthenticated;
我的用户名和密码验证正确,但状态始终为假。我如何实际登录用户以使状态为真?
您需要先创建身份验证 cookie
if(Membership.ValidateUser(username,password))
{
FormsAuthentication.SetAuthCookie(username,true);
} //do it in login page
然后你可以检查用户是否经过身份验证,在你不知道之前,因为网站是无状态的
从MSDN 中的方法文档:
ValidateUser 提供了一种从数据源验证用户名和密码的简单方法
请注意,它实际上并没有登录您的用户,它只是告诉您用户名/密码对是否正确。要实际为您的用户创建身份验证 cookie,您需要使用SetAuthCookie。