我正在使用ASP.NET MVC开发一个网站。 对于会员资格,我使用的是SimpleMembershipProvider。所以,这是我的web.config的一部分:
这是在我的Global.asax上的Application_Start:
中WebSecurity.InitializeDatabaseConnection("DefaultConnection", "Users", "UserID", "UserName", autoCreateTables: true);
好吧,我的问题在于LogIn。 显然,当我使用WebSecurity.Login(用户名,密码)时,它可以工作。我假设因为将它放在IF语句中时返回true。 但是,当我使用WebSecurity.IsAuthenticated时...它总是返回FALSE。 这是我的LogIn控制器:
public ActionResult ToLogIn([Bind(Include = "UserName, Password")] LogInModel _user)
{
if (ModelState.IsValid)
{
if (WebSecurity.Login(_user.UserName, _user.Password))
{
return RedirectToAction("Index", "Home")
}
}
return View(_user);
}
它工作并重定向到Index Home页面,它使用我检查WebSecurity.IsAuthenticated的布局,正如我之前所说,它总是返回False。