是否可以清除与 Entity Framework 关联的 ObjectContext 中的验证结果?我想要的是这样的代码:
public void ClearValidationResults (ObjectContext db)
{
var dbContext = new DbContext(db, true);
var validationResults = dbContext.GetValidationErrors();
validationResults.Clear();
}
我想实现此功能以在单元测试中使用以测试验证规则,而不必在数据库中保存更改。
谢谢。
最佳答案
DbContext
不存储验证错误,它会在您每次调用 DbContext.GetValidationErrors()
时验证实体或 DbContext.SaveChanges()
.因此,如果您的上下文正在跟踪一个无效实体 DbContext.GetValidationErrors()
总是会返回错误。您需要分离或修复无效实体,错误将消失,因为您的上下文不会跟踪无效实体。
关于entity-framework - 如何清除 Entity Framework 对象中的验证结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18783193/