DbContext.SaveChanges 方法

定义

重载

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 中保存数据

适用于