实体框架和失败的更新

时间:2013-08-27 15:57:07

标签: c# entity-framework-4

我正在为我的项目使用EF 4。我有一些标识字段作为其中一些实体的主键。

现在,如果由于某种原因我尝试插入新行并且SaveChanges()失败,那么我假设身份值仍然会增加并且序列中会有中断。

我的问题是,如果我在循环中保存了很多实体,该怎么办?我添加到上下文但在SaveChanges()上出错的情况会发生什么?它们会导致身份值在每次后续调用SaveChanges()时递增,因为这些实体从未提交到数据库?

1 个答案:

答案 0 :(得分:1)

如果SaveChanges失败,您将收到异常,并且您将无法再保存更多项目,因为一次又一次地调用SaveChanges将继续无法保存未能保存的更改。

身份永远不会破坏,它不是管理身份的实体框架,它是SQL Server,无论实体框架是否失败,SQL Server都能正确地完成其工作。

相关问题