日期:2014-05-17  浏览次数:20382 次

新手请教forms身份验证的问题
两个页面一个是Login.aspx一个是Default.aspx
在登陆界面的按钮事件处理的代码为
public void Login_OnClick(object sender, EventArgs args)
  {
  if (UsernameTextbox.Text=="feng123" && PasswordTextbox.Text=="123456")
  {
  FormsAuthentication.SetAuthCookie(UsernameTextbox.Text, true);

  Response.Redirect("Default.aspx"); 
  }
  else
  Msg.Text = "Login failed. Please check your user name and password and try again.";
  }

在Default.aspx中的代码为
<div>
  <% if( Request.IsAuthenticated ) { %>
  当前用户已登录,登录名:<%= Context.User.Identity.Name %> <br />  
  <input type="submit" name="Logon" value="退出" />
  <% } else { %>
  <b>当前用户还未登录。</b>
  <% } %>  
</div>

为什么我登陆后页面跳转到Default.aspx中显示的为
当前用户还未登陆



------解决方案--------------------
会不会是Cookie设置的问题
------解决方案--------------------
看下web.config中的配置信息,是否把验证模式设成了forms身份验证,看不出问题的话,把web.config的相关配置的代码贴出来
------解决方案--------------------
经测试,代码完全没有问题

登录后显示:当前用户已登录,登录名:PC20XXXXXXXKLT\Administrator 

有问题加Q:764537152