MembershipValidatePasswordEventHandler Delegat

Definicja

Reprezentuje metodę, która będzie obsługiwać ValidatingPassword zdarzenie MembershipProvider klasy.

public delegate void MembershipValidatePasswordEventHandler(System::Object ^ sender, ValidatePasswordEventArgs ^ e);
public delegate void MembershipValidatePasswordEventHandler(object sender, ValidatePasswordEventArgs e);
type MembershipValidatePasswordEventHandler = delegate of obj * ValidatePasswordEventArgs -> unit
Public Delegate Sub MembershipValidatePasswordEventHandler(sender As Object, e As ValidatePasswordEventArgs)

Parametry

sender
Object

Zdarzenie MembershipProvider zostało podniesione ValidatingPassword .

e
ValidatePasswordEventArgs

ValidatePasswordEventArgs Obiekt, który zawiera dane zdarzenia.

Przykłady

Poniższy przykład kodu przedstawia ValidatingPassword zdarzenie, które weryfikuje format hasła użytkownika, a następnie anuluje akcję, jeśli hasło nie jest zgodne z wymaganym formatem.

public void Page_Load()
{
  Membership.ValidatingPassword +=
    new MembershipValidatePasswordEventHandler(OnValidatePassword);
}

public void OnValidatePassword(object sender,
                              ValidatePasswordEventArgs args)
{
  System.Text.RegularExpressions.Regex r =
    new System.Text.RegularExpressions.Regex(@"(?=.{6,})(?=(.*\d){1,})(?=(.*\W){1,})");


  if (!r.IsMatch(args.Password))
  {
    args.FailureInformation =
      new HttpException("Password must be at least 6 characters long and " +
                        "contain at least one number and one special character.");
    args.Cancel = true;
  }
}
Public Sub Page_Load()
    AddHandler Membership.ValidatingPassword, _
    New MembershipValidatePasswordEventHandler(AddressOf OnValidatePassword)
End Sub

Public Sub OnValidatePassword(sender As Object, _
                               args As ValidatePasswordEventArgs)
  Dim r As System.Text.RegularExpressions.Regex =  _
    New System.Text.RegularExpressions.Regex("(?=.{6,})(?=(.*\d){1,})(?=(.*\W){1,})")
         

  If Not r.IsMatch(args.Password) Then
    args.FailureInformation = _
      New HttpException("Password must be at least 6 characters long and " & _
                        "contain at least one number and one special character.")
    args.Cancel = True
  End If
End Sub

Uwagi

Delegat MembershipValidatePasswordEventHandler jest zdefiniowany dla ValidatingPassword zdarzenia dla dostawcy członkostwa. Zdarzenie ValidatingPassword jest wywoływane, gdy CreateUser wywoływana jest metoda, ChangePassword metoda lub ResetPassword metoda dostawcy członkostwa.

Zdarzenie służy ValidatingPassword do weryfikowania formatów haseł i wartości dla użytkowników członkostwa.

Możesz anulować bieżącą CreateUserakcję , ChangePasswordlub ResetPassword , ustawiając Cancel właściwość dostarczonego ValidatePasswordEventArgs elementu na true wartość podczas ValidatingPassword zdarzenia.

Jeśli anulujesz bieżącą akcję, ustawiając Cancel właściwość na true, możesz ustawić FailureInformation właściwość dostarczonego ValidatePasswordEventArgs wyjątku, który opisuje przyczynę niepowodzenia weryfikacji hasła. Metoda wywołująca zgłosi wyjątek, FailureInformation na który ustawiono właściwość . FailureInformation Jeśli właściwość ma nullwartość , obiekt wywołujący zgłosi ogólny wyjątek niepowodzenia weryfikacji hasła.

Metody rozszerzania

GetMethodInfo(Delegate)

Pobiera obiekt reprezentujący metodę reprezentowaną przez określonego delegata.

Dotyczy

Zobacz też