AuthenticationService.Authenticating 事件  
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
当验证用户凭据时发生。
public:
 static event EventHandler<System::Web::ApplicationServices::AuthenticatingEventArgs ^> ^ Authenticating;public static event EventHandler<System.Web.ApplicationServices.AuthenticatingEventArgs> Authenticating;member this.Authenticating : EventHandler<System.Web.ApplicationServices.AuthenticatingEventArgs> Public Shared Custom Event Authenticating As EventHandler(Of AuthenticatingEventArgs) 事件类型
示例
以下示例演示如何在 Global.asax 文件的 方法中Application_Start为 Authenticating 事件绑定事件处理程序。
void Application_Start(object sender, EventArgs e) 
{
    System.Web.ApplicationServices.AuthenticationService.Authenticating += 
        new EventHandler<System.Web.ApplicationServices.AuthenticatingEventArgs>(AuthenticationService_Authenticating);
}
Sub Application_Start(ByVal sender As Object, ByVal e As EventArgs)
    AddHandler System.Web.ApplicationServices.AuthenticationService.Authenticating, _
      AddressOf Me.AuthenticationService_Authenticating
End Sub
以下示例演示 Global.asax 文件中 事件的事件处理程序 Authenticating 。 事件处理程序从 CustomCredential 属性中读取两个身份验证值,并将其与用户名和密码一起传递给名为 的 StudentAuthentication自定义身份验证类。
void AuthenticationService_Authenticating(object sender, System.Web.ApplicationServices.AuthenticatingEventArgs e)
{
    string studentid = String.Empty;
    string answer = String.Empty;
    string[] credentials =
        e.CustomCredential.Split(new char[] { ',' });
    if (credentials.Length > 0)
    {
        studentid = credentials[0];
        if (credentials.Length > 1)
        {
            answer = credentials[1];
        }
    }
    try
    {
        e.Authenticated =
            StudentAuthentication.ValidateStudentCredentials
            (e.UserName, e.Password, studentid, answer);
    }
    catch (ArgumentNullException ex)
    {
        e.Authenticated = false;
    }
    e.AuthenticationIsComplete = true;
}
Sub AuthenticationService_Authenticating _
   (ByVal sender As Object, _
    ByVal e As System.Web.ApplicationServices.AuthenticatingEventArgs)
    Dim studentid As String = String.Empty
    Dim answer As String = String.Empty
    Dim credentials As String() = _
         e.CustomCredential.Split(New Char() {","c})
    If (credentials.Length > 0) Then
        studentid = credentials(0)
        If (credentials.Length > 1) Then
            answer = credentials(1)
        End If
    End If
    Try
        e.Authenticated = _
            StudentAuthentication.ValidateStudentCredentials _
            (e.Username, e.Password, studentid, answer)
    Catch ex As ArgumentNullException
        e.Authenticated = False
    End Try
    
    e.AuthenticationIsComplete = True
End Sub
注解
验证 Authenticating 用户凭据时会引发 该事件。 为事件创建事件处理程序, Authenticating 以自定义验证用户凭据的方式。