DbContext.SaveChanges 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
SaveChanges(Boolean) |
将此上下文中所做的所有更改保存到数据库。 |
SaveChanges() |
将此上下文中所做的所有更改保存到数据库。 |
SaveChanges(Boolean)
将此上下文中所做的所有更改保存到数据库。
[System.Diagnostics.DebuggerStepThrough]
public virtual int SaveChanges (bool acceptAllChangesOnSuccess);
public virtual int SaveChanges (bool acceptAllChangesOnSuccess);
[<System.Diagnostics.DebuggerStepThrough>]
abstract member SaveChanges : bool -> int
override this.SaveChanges : bool -> int
abstract member SaveChanges : bool -> int
override this.SaveChanges : bool -> int
Public Overridable Function SaveChanges (acceptAllChangesOnSuccess As Boolean) As Integer
参数
- acceptAllChangesOnSuccess
- Boolean
指示是否 AcceptAllChanges() 在更改成功发送到数据库后调用 。
返回
写入数据库的状态条目数。
- 属性
例外
保存到数据库时遇到错误。
保存到数据库时遇到并发冲突。 如果保存期间出现意外数量的行受到影响,则会发生并发冲突。 这通常是因为数据库中的数据自加载到内存后已修改。
注解
在保存到基础数据库之前,此方法将自动调用 DetectChanges() 以发现对实体实例的任何更改。 这可以通过 禁用 AutoDetectChangesEnabled。
Entity Framework Core 不支持在同一 DbContext 实例上运行多个并行操作。 这包括异步查询的并行执行以及从多个线程进行的任何显式并发使用。 因此,请始终立即等待异步调用,或者对并行执行的操作使用单独的 DbContext 实例。 有关详细信息和示例 ,请参阅避免 DbContext 线程问题 。
有关详细信息和示例,请参阅 在 EF Core 中保存数据 。
适用于
SaveChanges()
将此上下文中所做的所有更改保存到数据库。
[System.Diagnostics.DebuggerStepThrough]
public virtual int SaveChanges ();
public virtual int SaveChanges ();
[<System.Diagnostics.DebuggerStepThrough>]
abstract member SaveChanges : unit -> int
override this.SaveChanges : unit -> int
abstract member SaveChanges : unit -> int
override this.SaveChanges : unit -> int
Public Overridable Function SaveChanges () As Integer
返回
写入数据库的状态条目数。
- 属性
例外
保存到数据库时遇到错误。
保存到数据库时遇到并发冲突。 如果保存期间出现意外数量的行受到影响,则会发生并发冲突。 这通常是因为数据库中的数据自加载到内存后已修改。
注解
在保存到基础数据库之前,此方法将自动调用 DetectChanges() 以发现对实体实例的任何更改。 这可以通过 禁用 AutoDetectChangesEnabled。
Entity Framework Core 不支持在同一 DbContext 实例上运行多个并行操作。 这包括异步查询的并行执行以及从多个线程进行的任何显式并发使用。 因此,请始终立即等待异步调用,或者对并行执行的操作使用单独的 DbContext 实例。 有关详细信息和示例 ,请参阅避免 DbContext 线程问题 。
有关详细信息和示例,请参阅 在 EF Core 中保存数据 。