Bagikan melalui


MembershipValidatePasswordEventHandler Delegasikan

Definisi

Mewakili metode yang akan menangani ValidatingPassword peristiwa MembershipProvider kelas.

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)

Parameter

sender
Object

Yang MembershipProvider memunculkan ValidatingPassword peristiwa.

e
ValidatePasswordEventArgs

Objek ValidatePasswordEventArgs yang berisi data peristiwa.

Contoh

Contoh kode berikut menunjukkan ValidatingPassword peristiwa yang memvalidasi format kata sandi untuk pengguna, lalu membatalkan tindakan jika kata sandi tidak cocok dengan format yang diperlukan.

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

Keterangan

MembershipValidatePasswordEventHandler Delegasi didefinisikan untuk ValidatingPassword acara untuk penyedia keanggotaan. Peristiwa ValidatingPassword dimunculkan ketika CreateUser metode, ChangePassword metode, atau ResetPassword metode penyedia keanggotaan dipanggil.

Anda dapat menggunakan peristiwa untuk ValidatingPassword memvalidasi format dan nilai kata sandi untuk pengguna keanggotaan.

Anda dapat membatalkan tindakan , , atau saat ini CreateUserdengan mengatur Cancel properti yang disediakan ValidatePasswordEventArgstrue selama ValidatingPassword acara.ResetPasswordChangePassword

Jika Anda membatalkan tindakan saat ini dengan mengatur Cancel properti ke true, Anda dapat mengatur FailureInformation properti yang disediakan ValidatePasswordEventArgs ke pengecualian yang menjelaskan alasan kegagalan validasi kata sandi. Metode pemanggilan akan memberikan pengecualian bahwa FailureInformation properti diatur ke. FailureInformation Jika properti adalah null, pemanggil akan melemparkan pengecualian kegagalan validasi kata sandi generik.

Metode Ekstensi

GetMethodInfo(Delegate)

Mendapatkan objek yang mewakili metode yang diwakili oleh delegasi yang ditentukan.

Berlaku untuk

Lihat juga