共用方式為


DbContext.SaveChangesAsync 方法

定義

多載

SaveChangesAsync(Boolean, CancellationToken)

將此內容中所做的所有變更儲存至資料庫。

SaveChangesAsync(CancellationToken)

將此內容中所做的所有變更儲存至資料庫。

SaveChangesAsync(Boolean, CancellationToken)

將此內容中所做的所有變更儲存至資料庫。

public virtual System.Threading.Tasks.Task<int> SaveChangesAsync (bool acceptAllChangesOnSuccess, System.Threading.CancellationToken cancellationToken = default);
abstract member SaveChangesAsync : bool * System.Threading.CancellationToken -> System.Threading.Tasks.Task<int>
override this.SaveChangesAsync : bool * System.Threading.CancellationToken -> System.Threading.Tasks.Task<int>
Public Overridable Function SaveChangesAsync (acceptAllChangesOnSuccess As Boolean, Optional cancellationToken As CancellationToken = Nothing) As Task(Of Integer)

參數

acceptAllChangesOnSuccess
Boolean

指出是否 AcceptAllChanges() 在成功將變更傳送至資料庫之後呼叫。

cancellationToken
CancellationToken

CancellationToken等候工作完成時要觀察的 。

傳回

代表非同步儲存作業的工作。 工作結果包含寫入資料庫的狀態專案數目。

例外狀況

儲存至資料庫時發生錯誤。

儲存至資料庫時發生並行違規。 在儲存期間影響非預期的資料列數目時,就會發生並行違規。 這通常是因為資料庫中的資料自載入記憶體後已經過修改。

備註

此方法會在儲存至基礎資料庫之前,自動呼叫 DetectChanges() 來探索實體實例的任何變更。 這可以透過 AutoDetectChangesEnabled 停用。

Entity Framework Core 不支援在相同的 DbCoNtext 實例上執行多個平行作業。 這包括平行執行非同步查詢,以及明確同時使用多個執行緒。 因此,請一律立即等候非同步呼叫,或針對平行執行的作業使用個別的 DbCoNtext 實例。 如需詳細資訊和範例 ,請參閱避免 DbCoNtext 執行緒問題

如需詳細資訊和範例,請參閱在 EF Core 中儲存資料

適用於

SaveChangesAsync(CancellationToken)

將此內容中所做的所有變更儲存至資料庫。

public virtual System.Threading.Tasks.Task<int> SaveChangesAsync (System.Threading.CancellationToken cancellationToken = default);
abstract member SaveChangesAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task<int>
override this.SaveChangesAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task<int>
Public Overridable Function SaveChangesAsync (Optional cancellationToken As CancellationToken = Nothing) As Task(Of Integer)

參數

cancellationToken
CancellationToken

CancellationToken等候工作完成時要觀察的 。

傳回

代表非同步儲存作業的工作。 工作結果包含寫入資料庫的狀態專案數目。

例外狀況

儲存至資料庫時發生錯誤。

儲存至資料庫時發生並行違規。 在儲存期間影響非預期的資料列數目時,就會發生並行違規。 這通常是因為資料庫中的資料自載入記憶體後已經過修改。

備註

此方法會在儲存至基礎資料庫之前,自動呼叫 DetectChanges() 來探索實體實例的任何變更。 這可以透過 AutoDetectChangesEnabled 停用。

Entity Framework Core 不支援在相同的 DbCoNtext 實例上執行多個平行作業。 這包括平行執行非同步查詢,以及明確同時使用多個執行緒。 因此,請一律立即等候非同步呼叫,或針對平行執行的作業使用個別的 DbCoNtext 實例。 如需詳細資訊和範例 ,請參閱避免 DbCoNtext 執行緒問題

如需詳細資訊和範例,請參閱在 EF Core 中儲存資料

適用於