MembershipUser.ChangePassword方法始终返回false

时间:2014-11-09 10:52:23

标签: mysql asp.net-mvc-4 visual-studio-2012 .net-4.0 asp.net-membership

我遇到mvc4会员问题,我无法更改用户的密码

public bool SetNewPassword(string newPassword)
    {
        var generatedPassword = membershipUser.ResetPassword();
        return membershipUser.ChangePassword(generatedPassword, newPassword);
    }

它总是返回false,我检查用户没有被锁定,并且被批准,我该如何处理?请帮助,我在这一点上疯狂。

2 个答案:

答案 0 :(得分:0)

您确定新密码符合要求吗?例如,它太短了。

答案 1 :(得分:0)

如果您正在为MVC 4项目使用simplemembership提供程序,您可以使用以下代码重置密码...

  

public bool ResetPassword(string newPassword)           {

        bool result = false;

        if (User.Identity.IsAuthenticated)
        {
            var member = Membership.GetUser();

            string token = WebSecurity.GeneratePasswordResetToken(member.UserName);
            result = WebSecurity.ResetPassword(token, newPassword);
        }

        return result;
    }