トラブルシューティング「ASP.NET MVCの重複したプライマリキー「エンティティの添付」
問題1:分離したエンティティ
エンティティは、エンティティフレームワークのコンテキストから切り離され、更新の認識を妨げる可能性があります。 これを修正するには、状態を。
問題2:コンカレントデータベースの変更Attach()
データベースに同時にアクセスする複数のユーザーまたはプロセスは、競合につながる可能性があります。 更新する前に、データベースからエンティティを更新して、最新バージョンを使用していることを確認してください。
Modified
問題3:競合する検証またはアクセス制御
カスタム検証またはアクセス制御ロジックは、意図せずにエンティティの状態を変更する可能性があります。 これらのチェックが状態が設定される前にエンティティをロードすると、剥離を引き起こす可能性があります。このロジックを慎重に確認して、干渉を排除します
問題4:非同期コントローラーの問題
非同期コントローラーアクションは、同時実行の問題を引き起こす可能性があります。 キーワードを使用して、競合を回避する前にデータの変更が終了するようにします。
例のシナリオとソリューション:Modified
1つの例では、更新前にエンティティをロードしたカスタム関数()に起因するエラーが示されました。 解決策は、関数内でを使用して、エンティティフレームワークがエンティティの追跡を防ぎ、競合を解決することでした。
以上がASP.NET MVCの「プライマリキーの重複」エラーを「添付するエンティティを添付する」方法を解決するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。