【问题标题】:MembershipUser.ChangePassword fails without warningMembershipUser.ChangePassword 在没有警告的情况下失败
【发布时间】:2009-05-21 10:26:37
【问题描述】:

如果我调用 user.ChangePassword(oldpass,newpass) 时,旧密码错误,或者新密码不符合提供者的复杂度要求,该方法会在没有警告的情况下失败。有什么办法可以找出是否有错误以及错误是什么。

我总是可以将这些检查放入我的代码中,但应该有一种方法可以使用 Membership API 来做到这一点

【问题讨论】:

    标签: asp.net asp.net-membership


    【解决方案1】:

    很遗憾没有。 ChangePassword 方法只返回一个简单的布尔值来表示成功/失败。

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

    更改密码失败。
    这可能是因为:

    • 旧密码不正确
    • 新密码未能满足所需的复杂性
    • 新密码的长度必须为 8 个字符,并且至少包含 2 个数字字符。 (或其他)

    如果您想提供更具体的信息,那么正如您所说,您需要在自己的代码中实现规则检查器,并根据该检查将信息传递给用户。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-05-23
      • 2023-01-16
      • 2021-11-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-25
      相关资源
      最近更新 更多