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 中儲存資料

適用於