MembershipUser.ChangePassword не работает без предупреждения - PullRequest
1 голос
/ 21 мая 2009

Если я вызываю user.ChangePassword (oldpass, newpass), а старый пароль неверен, или новый пароль не соответствует требованию сложности поставщика, метод завершается неудачно без предупреждения. Есть ли способ, которым я могу узнать, если есть ошибка и что ошибка была.

Я всегда могу поставить эти проверки в своем коде, но должен быть способ сделать это с помощью API Членства

1 Ответ

5 голосов
/ 21 мая 2009

К сожалению нет. Метод ChangePassword возвращает только простое значение bool для успеха / неудачи.

Лучшим вариантом при сбое будет показывать пользователю общее сообщение с указанием всех возможных причин сбоя ... например,

Не удалось сменить пароль.
Это могло произойти, потому что:

  • Старый пароль был неверным
  • Новый пароль не соответствует требуемой сложности
  • Новые пароли должны быть длиной 8 символов и содержать как минимум 2 цифровых символа. (или что угодно)

Если вы хотите предоставить более конкретную информацию, то, как вы сказали, вам нужно будет внедрить проверку правил в ваш собственный код и передавать информацию пользователю на основе этой проверки.

...