我正在尝试在我刚刚使用 WebMatrix 构建的现有网站上设置简单的会员资格。我已按照本教程中的步骤进行操作 - http://www.mikepope.com/blog/DisplayBlog.aspx?permalink=2240
我遇到的问题是,登录后,如果我调用 WebSecurity.IsAuthenticated,它似乎从未真正登录过。登录上的代码一直到重定向,所以人们会假设用户已经过身份验证。这是我的登录代码:
@{
var username = "";
var password = "";
var errorMessage = "";
if(IsPost){
username = Request["username"];
password = Request["password"];
if(WebSecurity.Login(username,password,true)){
Response.Redirect("~/admin/modules/pages");
}
else
{
errorMessage = "Login was not successful.";
}
}
}
当用户被重定向到 /admin/modules/pages 位置时,有一段简单的代码可以在登录时显示用户名,但它从不显示。它只是表明您没有登录。这是代码:
@if(WebSecurity.IsAuthenticated)
{
<h2>Hello @WebSecurity.CurrentUserName, you are logged in | <a href="/admin/logout">Log out</a></h2>
}
else
{
<h2>You are not logged in | <a href="/admin/login">Log in</a></h2>
}
希望有人可以提供帮助。提前致谢。