1

開発者環境を 2 年ごとにクリーンアップするときが来たので、データベースをバックアップし、ドライブをフォーマットし、ソフトウェアを再インストールしました。

sql Express から localDB への変更を除いて、開発環境に関する大きな変更はありません。

しかし、データベースを復元した後すぐに、エンティティ フレームワークが読み取り以外の処理を拒否していることに気付きました。何かを削除しようとすると、次のようになりました。

ObjectStateManager で見つからなかったため、オブジェクトを削除できません。

したがって、これをグーグルで検索すると、dbContext のさまざまなインスタンスでオブジェクトを処理する際の問題がわかりました。そのため、1回の呼び出しで同じものを使用したことを確認することで、再び機能し始めました。

ただし、何がこの変化する動作を引き起こしたのかはわかりません。コンピューターをリセットする前に、dbContext のシングルトン インスタンスを使用して両方を試してみました。次に、これをクイックハックして、EF のすべてのアクションごとに毎回新しいインスタンスを返すようにしました。

私の質問は、この新しい動作を引き起こした私の環境の変化は何であり、当然のことながら、EF アクションごとに新しい dbContext を使用できなくなったのでしょうか?

4

0 に答える 0