自定义成员资格提供程序和ChangePassword控件

时间:2011-12-02 14:59:51

标签: asp.net membership

我已经借助以下链接为我现有的数据库架构实现了自定义Membership提供程序

我已覆盖以下方法CreateUSerValidateUserGetUserChangePasswordResetPassword。 对于ChangePassword方法,它验证最小长度的新密码以及字母数字字符数。如果验证失败,则该方法将抛出具有确切错误的Argument Exception。

我面临的问题是,我使用内置的更改密码控件,我收到以下错误,"Argumnet exception was unhandled in user code"

此外,它还显示一般错误

"Password incorrect or New Password invalid."

我宁愿显示错误的确切原因,为什么密码验证失败。

我如何实现这一目标。我将不胜感激任何帮助或指导。

由于

2 个答案:

答案 0 :(得分:0)

问题在您的实施中可能virtual function MembershipUser.ChangePassword从MSDN文章中,它需要采用2个参数:

oldPassword
    Type:System.String
    The current password for the membership user.
newPassword
    Type:System.String
    The new password for the membership user.

没有看到你的ChangePassword功能,我猜你是

  1. 未传递“oldPassword”参数或
  2. 将不是字符串的值作为这两个参数之一传递。
  3. 修改:根据您的评论,您真正想要做的是处理ChangePassword控件的ChangePasswordError事件。这可以让您在出现错误时提供自定义反馈。

答案 1 :(得分:0)

我遇到了同样的问题。您似乎必须使用常规表单并创建错误处理以显示您想要的消息,而不是显示的内置消息。