Sdílet prostřednictvím


MembershipValidatePasswordEventHandler Delegát

Definice

Představuje metodu, která bude zpracovávat ValidatingPassword událost MembershipProvider třídy.

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

Událost MembershipProvider , která vyvolala ValidatingPassword událost.

e
ValidatePasswordEventArgs

Objekt ValidatePasswordEventArgs , který obsahuje data události.

Příklady

Následující příklad kódu ukazuje ValidatingPassword událost, která ověří formát hesla pro uživatele, a pak akci zruší, pokud heslo neodpovídá požadovanému formátu.

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

Poznámky

Delegát MembershipValidatePasswordEventHandler je definován pro ValidatingPassword událost pro zprostředkovatele členství. Událost ValidatingPassword je vyvolána při CreateUser zavolání metody, ChangePassword metody nebo ResetPassword metody zprostředkovatele členství.

Událost můžete použít ValidatingPassword k ověření formátů hesel a hodnot pro uživatele členství.

Aktuální CreateUserakci můžete ResetPasswordChangePasswordzrušit nastavením Cancel vlastnosti zadané ValidatePasswordEventArgs během události na trueValidatingPassword hodnotu .

Pokud aktuální akci zrušíte nastavením Cancel vlastnosti na true, můžete vlastnost zadaného ValidatePasswordEventArgs objektu nastavit FailureInformation na výjimku, která popisuje příčinu selhání ověření hesla. Metoda volání vyvolá výjimku, na FailureInformation kterou je vlastnost nastavena. FailureInformation Pokud je nullvlastnost , volající vyvolá obecnou výjimku selhání ověření hesla.

Metody rozšíření

GetMethodInfo(Delegate)

Získá objekt, který představuje metodu reprezentovanou zadaným delegátem.

Platí pro

Viz také