DbContext.SaveChangesAsync メソッド
[このページは、Entity Framework 6 に関するページです。最新バージョンは、'Entity Framework' NuGet パッケージとして入手できます。Entity Framework の詳細については、msdn.com/data/ef を参照してください。]
このコンテキストで行われたすべての変更を、基になるデータベースに非同期で保存します。
名前空間: System.Data.Entity
アセンブリ: EntityFramework (EntityFramework.dll 内)
構文
'宣言
Public Overridable Function SaveChangesAsync As Task(Of Integer)
'使用
Dim instance As DbContext
Dim returnValue As Task(Of Integer)
returnValue = instance.SaveChangesAsync()
public virtual Task<int> SaveChangesAsync()
public:
virtual Task<int>^ SaveChangesAsync()
abstract SaveChangesAsync : unit -> Task<int>
override SaveChangesAsync : unit -> Task<int>
public function SaveChangesAsync() : Task<int>
戻り値
型 : System.Threading.Tasks.Task<Int32>
非同期保存操作を表すタスク。タスクの結果には、基になるデータベースに書き込まれたオブジェクト数が示されます。
例外
例外 | 状態 |
---|---|
DbUpdateException | データベースへの更新の送信で発生するエラー。 |
DbUpdateConcurrencyException | 予想される行の数に影響しないデータベース コマンド。 これは、通常、オプティミスティック同時実行制御違反を示しています。つまり、データベースの行のクエリがなされた後、その行が変更されたということです。 |
DbEntityValidationException | エンティティ プロパティの検証がエラーになったため、保存は中止されました。 |
NotSupportedException | 同じコンテキスト インスタンスで非同期コマンドを同時に複数実行するなど、サポートされていない動作を使おうとしました。 |
ObjectDisposedException | コンテキストまたは接続が破棄されました。 |
InvalidOperationException | データベースにコマンドを送信する前後どちらかで、エンティティをコンテキストで処理しようとして何らかのエラーが発生しました。 |
解説
同じコンテキスト インスタンスに対する複数のアクティブ操作はサポートされません。 このコンテキストで別のメソッドを呼び出す前に、非同期操作が完了したことを確認するために await を使用します。