MembershipValidatePasswordEventHandler Delegera

Definition

Representerar den metod som ska hantera ValidatingPassword händelsen för MembershipProvider klassen.

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)

Parametrar

sender
Object

Det MembershipProvider som väckte händelsen ValidatingPassword .

e
ValidatePasswordEventArgs

Ett ValidatePasswordEventArgs objekt som innehåller händelsedata.

Exempel

I följande kodexempel visas en ValidatingPassword händelse som verifierar lösenordets format för användaren och sedan avbryter åtgärden om lösenordet inte matchar det format som krävs.

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

Kommentarer

Ombudet MembershipValidatePasswordEventHandler definieras för ValidatingPassword händelsen för en medlemskapsprovider. Händelsen ValidatingPassword utlöses när CreateUser metoden, ChangePassword metoden eller metoden för ResetPassword en medlemskapsprovider anropas.

Du kan använda händelsen ValidatingPassword för att verifiera lösenordsformat och -värden för medlemskapsanvändare.

Du kan avbryta den aktuella CreateUseråtgärden , ChangePasswordeller ResetPassword genom att ange Cancel egenskapen för den angivna ValidatePasswordEventArgs till true under ValidatingPassword händelsen.

Om du avbryter den aktuella åtgärden genom att ange Cancel egenskapen till truekan du ange FailureInformation egenskapen för den angivna ValidatePasswordEventArgs till ett undantag som beskriver orsaken till felet med lösenordsvalidering. Anropsmetoden utlöser undantaget som egenskapen är inställd på FailureInformation . Om egenskapen FailureInformation är nullutlöser anroparen ett allmänt undantag för lösenordsvalidering.

Tilläggsmetoder

Name Description
GetMethodInfo(Delegate)

Hämtar ett objekt som representerar den metod som representeras av det angivna ombudet.

Gäller för

Se även