我想要做什么
对用户进行身份验证,并根据他们的角色将他们重定向到页面。
我的问题
第一次输入正确的凭据失败。用户已通过身份验证,但在评估他们所处的角色时,没有一个 if 语句为真。第二次(回发后)它按预期工作。
我的问题
为什么这不起作用;为什么我必须对用户进行身份验证,并在设置角色之前回发?
代码
Private Sub Login1_Authenticate(sender As Object, e As AuthenticateEventArgs) Handles Login1.Authenticate
If Membership.ValidateUser(Login1.UserName, Login1.Password) Then
FormsAuthentication.SetAuthCookie(Login1.UserName, False)
ToPage()
End If
End Sub
Private Sub ToPage()
If User.IsInRole("Role1") Then
Response.Redirect("~/Page1.aspx")
End If
If User.IsInRole("Role2") Then
Response.Redirect("~/Page2.aspx")
End If
If User.IsInRole("Role3") Then
Response.Redirect("~/Page3.aspx")
End If
End Sub