Ich kann mein Passwort nicht ändern, wenn ich meine Anwendung ausführe. Es hielt immer an der Validierungszusammenfassung fest und ich kann mein Kennwort nicht ändern. Gibt es etwas auf dem Code, der geändert werden muss oder Konfiguration benötigt wird? Dies ist der Fehler, den ich erhalte.Passwortänderung war nicht erfolgreich. Bitte korrigieren Sie die Fehler und versuchen Sie es erneut.
Die Passwortänderung war nicht erfolgreich. Bitte korrigieren Sie die Fehler und versuchen Sie es erneut. Das aktuelle Passwort ist falsch oder das neue Passwort ist ungültig.
Aber ich bin sicher, dass ich mein aktuelles Passwort richtig eintippe.
MODEL AccountModel.cs
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Globalization;
using System.Web.Mvc;
using System.Web.Security;
namespace Customer.Models
{
public class ChangePasswordModel
{
[Required]
[DataType(DataType.Password)]
[Display(Name = "Current password")]
public string OldPassword { get; set; }
[Required]
[StringLength(100, ErrorMessage = "The {0} must be at least {2} characters long.", MinimumLength = 6)]
[DataType(DataType.Password)]
[Display(Name = "New password")]
public string NewPassword { get; set; }
[DataType(DataType.Password)]
[Display(Name = "Confirm new password")]
[Compare("NewPassword", ErrorMessage = "The new password and confirmation password do not match.")]
public string ConfirmPassword { get; set; }
}
}
-Controller
// GET: /Account/ChangePassword
[Authorize]
public ActionResult ChangePassword()
{
return View();
}
// POST: /Account/Register
[HttpPost]
public ActionResult Register(RegisterModel model)
{
if (ModelState.IsValid)
{
// Attempt to register the user
//MembershipCreateStatus createStatus;
try
{
MembershipService.CreateUser(model.UserName, model.FullName, model.Password, model.Email);
//if (createStatus == MembershipCreateStatus.Success)
//{
FormsAuthentication.SetAuthCookie(model.UserName, false /* createPersistentCookie */);
return RedirectToAction("Index", "Home");
//}
}
catch(ArgumentException ae)
{
ModelState.AddModelError("", ae.Message);
}
}
// If we got this far, something failed, redisplay form
return View(model);
}
// POST: /Account/ChangePassword
[Authorize]
[HttpPost]
public ActionResult ChangePassword(ChangePasswordModel model)
{
if (ModelState.IsValid)
{
// ChangePassword will throw an exception rather
// than return false in certain failure scenarios.
bool changePasswordSucceeded;
try
{
MembershipUser currentUser = Membership.GetUser(User.Identity.Name, true);
changePasswordSucceeded = currentUser.ChangePassword(model.OldPassword, model.NewPassword);
}
catch (Exception)
{
changePasswordSucceeded = false;
}
if (changePasswordSucceeded)
{
return RedirectToAction("ChangePasswordSuccess");
}
else
{
ModelState.AddModelError("", "The current password is incorrect or the new password is invalid.");
}
}
// If we got this far, something failed, redisplay form
return View(model);
}
// GET: /Account/ChangePasswordSuccess
public ActionResult ChangePasswordSuccess()
{
return View();
}
Gibt es Ausnahmen? kommt das Modell als gültig zurück? –
Es ist ungültig ich denke. –
können Sie das überprüfen? –