EF5.0修改实体的时候,出现“对一个或多个实体的验证失败。有关详细信息,请参见“EntityValidationErrors”属性这个错误

对于这个错误,要在SaveChanges前关闭验证实体有效性(ValidateOnSaveEnabled)这个开关

db.Configuration.ValidateOnSaveEnabled = false;//关闭验证

db.SaveChanges();

db.Configuration.ValidateOnSaveEnabled = true;//保存完之后再开启

或者,在创建EF上下文对象的时候,在线程*享一个上下文对象

public DbContext GetDbContext()

{

  DbContext dbContext = CallContext.GetData(typeof(DBContextFactory).Name) as DbContext;

  if(dbContext == null)

  {

    dbContext = new IZhanShiEntities();

    dbContext.Configuration.ValidataOnSaveEnabled = false;

    //将新创建的EF上下文对象存入线程

    CallContext.SetData(typeof(DBContextFactory).Name,dbContext);

  }

  return dbContext;

}

上一篇:移动端禁止蒙层下的页面滚动


下一篇:vue项目用原生js动态创建的div的样式不起作用该怎么办?