我正在尝试从我的视图中的表中删除一条记录(不是我的数据库)......我正在接收:
EntityFramework.dll中出现'System.Data.Entity.Validation.DbEntityValidationException'类型的异常,但未在用户代码中处理。
我已经调试过了,DeleteConfirmed
Actionresult的记录是正确的,并且所有属性/字段都被填入,没有一个留空。
控制器操作:
[HttpPost, ActionName("Delete")]
[ValidateAntiForgeryToken]
public ActionResult DeleteConfirmed(int id)
{
codePerson codePerson = db.codePerson.Find(id);
codePerson.deleted = true;
TryUpdateModel(codePerson);
db.SaveChanges();
return RedirectToAction("Index");
}
元数据类:
[MetadataType(typeof(MetaDatacodePerson))]
public partial class codePerson
{
}
public class MetaDatacodePerson
{
public int ID { get; set; }
[RegularExpression(@"^(\s+)?[\w.\\]+\s\w+\s\w+(\s+)?$", ErrorMessage = "Custom Error Message")]
public string Name { get; set; }
public string IBM { get; set; }
public string CategoryID { get; set; }
public bool deleted { get; set; }
public int LocationID { get; set; }
}
为什么在填充codePerson
的所有属性时会发生此错误?我的数据库中的所有这些字段都不接受空值,就像我上面所说的......当调试时,这些字段都不为null,或者是emptyspace。