DbContext.SaveChangesAsync 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
多載
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 中儲存資料 。