MVC 5更新行中未知列
本文关键字:未知 更新 MVC | 更新日期: 2023-09-27 18:14:34
我需要更新行中的一些列,但我不知道用户将更新哪些列。有很多必填项,可能是用户不需要更新的一些必填项
[HttpPost]
public ActionResult Edit(int id,users user)
{
users query = db.users.Single(u => u.Id == id);
query.username = user.username;
query.password = user.password;
query.confirmPassword = user.confirmPassword;
query.email = user.email;
query.type = user.type;
query.photopath = user.photopath;
query.address = user.address;
query.note = user.note;
db.SaveChanges();
return RedirectToAction("Index");
}
通过这种方式如果我更新一些必需的文件,就会出现错误
类型的异常"System.Data.Entity.Validation。DbEntityValidationException的发生在EntityFramework.dll中,但未在用户代码
中处理附加信息:一个或多个实体验证失败。详细信息请参见'EntityValidationErrors'属性。
在更新之前使用if条件检查需要更新的行在
if(!user.username.toString().Equals(query.username))//dont update it when already they are same
{
query.username = user.username;
}