Entity Framework Core エラー: 「前の操作が完了する前に、このコンテキストで 2 番目の操作が開始されました」
で Entity Framework Core を使用する場合ASP.Net Core 2.0 プロジェクトでは、「前の操作が完了する前に、このコンテキストで 2 番目の操作が開始されました。」というエラーが発生する場合があります。このエラーは、コードがローカルでは問題なく実行されても、ステージング サーバーにデプロイすると失敗する場合でも発生することがあります。
考えられる原因:
解決策:
DbContext を一時として登録します:
依存関係の挿入によって引き起こされる同時実行性の問題を解決するには、DbContext を一時的なものとして登録します。スコープ付き。次のコードを使用します:
services.AddTransient<MyContext>();
非同期ラムダ式を回避する:
非同期操作が使用されている場合は、コードをリファクタリングして非同期ラムダ式の使用を回避します。
スレッドを確認する安全性:
DbContext 実装の制限を理解し、操作を順番に実行するか、適切な同期メカニズムを使用してスレッドの安全性を確保します。
その他の要素を考慮します:
以上がEntity Framework コア アプリケーションで「前の操作が完了する前に、このコンテキストで 2 番目の操作が開始されました」というエラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。