MembershipValidatePasswordEventHandler 代理人

定義

代表將處理 MembershipProvider 類別的 ValidatingPassword 事件之方法。

public delegate void MembershipValidatePasswordEventHandler(object sender, ValidatePasswordEventArgs e);

參數

sender
Object

引發 MembershipProvider 事件的 ValidatingPassword

e
ValidatePasswordEventArgs

包含事件資料的 ValidatePasswordEventArgs 物件。

範例

下列程式代碼範例顯示 ValidatingPassword 驗證用戶密碼格式的事件,如果密碼不符合必要的格式,則會取消動作。

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;
  }
}

備註

委派 MembershipValidatePasswordEventHandler 是針對 ValidatingPassword 成員資格提供者的事件所定義。 ValidatingPassword呼叫成員資格提供者的方法、ChangePassword方法或ResetPassword方法時CreateUser,就會引發事件。

您可以使用 ValidatingPassword 事件來驗證成員資格使用者的密碼格式和值。

您可以藉由將 事件期間ValidatingPassword提供的 ValidatePasswordEventArgstrue 屬性設定Cancel為 ,以取消目前的CreateUserChangePasswordResetPassword 動作。

如果您藉由將 屬性true設定Cancel為 來取消目前的動作,您可以將 提供的 ValidatePasswordEventArgs 屬性設定FailureInformation為例外狀況,以描述密碼驗證失敗的原因。 呼叫方法會擲回 屬性設定為的 FailureInformation 例外狀況。 FailureInformation如果 屬性為 null,呼叫端將會擲回泛型密碼驗證失敗例外狀況。

擴充方法

GetMethodInfo(Delegate)

取得表示特定委派所代表之方法的物件。

適用於

產品 版本
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1

另請參閱