MembershipUser.ChangePassword失败,但不发出警告

问题描述:

如果我调用user.ChangePassword(oldpass,newpass),并且旧密码错误,或者新密码不符合提供者的复杂性要求,则该方法将在未发出警告的情况下失败。有什么方法可以找出是否有错误,错误是什么。MembershipUser.ChangePassword失败,但不发出警告

我可以随时把这些检查在我的代码,但应该有一种方法使用会员的API

遗憾的是没有做到这一点。 ChangePassword方法只返回一个简单的布尔成功/失败。

失败的最佳选择是向用户显示一条通用消息,说明所有可能的故障原因。

无法更改密码。
这可能发生,因为:

  • 旧的密码是不正确的
  • 新密码不符合要求的complexibility
  • 新密码必须是8个字符长,至少包含2个数字字符。 (或其他)

如果要给出更具体的信息,那么如你所说,你需要实现规则检查在自己的代码和传递信息基于该检查的用户。