Asp.net mvc 我一直在尝试在我';将更新密码,但db.savechanges不是';我无法使用我的代码
密码更改时未加载复杂类型,因此在更新密码db.savechanges()时无法工作。因此,如果加载复杂类型(本例中为地址),则问题已解决什么是“不工作”?有例外吗?还是怎样请提供详细信息。一个或多个实体的验证失败。有关详细信息,请参阅“EntityValidationErrors”属性。这是我无法理解的错误。您能显示您的UserDetail类吗?公共int Id{get;set;}[必需(ErrorMessage=“输入用户名”)]公共字符串用户名{get;set;}[必需(ErrorMessage=“输入密码”)][数据类型(DataType.Password)]公共字符串密码{get set;}[必需](ErrorMessage=“输入出生日期”)][DataType(DataType.Date)]公共日期时间日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期日期解决了UserDetails类中复杂类型的问题Asp.net mvc 我一直在尝试在我';将更新密码,但db.savechanges不是';我无法使用我的代码,asp.net-mvc,asp.net-mvc-3,razor,Asp.net Mvc,Asp.net Mvc 3,Razor,密码更改时未加载复杂类型,因此在更新密码db.savechanges()时无法工作。因此,如果加载复杂类型(本例中为地址),则问题已解决什么是“不工作”?有例外吗?还是怎样请提供详细信息。一个或多个实体的验证失败。有关详细信息,请参阅“EntityValidationErrors”属性。这是我无法理解的错误。您能显示您的UserDetail类吗?公共int Id{get;set;}[必需(ErrorMessage=“输入用户名”)]公共字符串用户名{get;set;}[必需(ErrorMessa
public ActionResult ChangePassword(ChangePassword model)
{
if (ModelState.IsValid)
{
UserDetail ud = db.UserDetails.FirstOrDefault(s => s.UserName == User.Identity.Name);
try
{
if (ud.Password == model.OldPassword)
{
ud.Password = model.NewPassword;
TryUpdateModel(ud);
**db.SaveChanges();**
return RedirectToAction("ChangePasswordSuccess");
}
else
{
ViewBag.ErrorMsgForPassword = "old password is not correct";
}
}
catch
{
return View();
}
}