私はEntity Frameworkを使用してAsp.net MVCサイトを作成しており、データベースにコミットせずに新しいエンティティと更新エンティティを複数の要求に渡ってメモリ内に保持する方法を知りたいと思います。
たとえば、ユーザーがエンティティを編集するためのビューに移動し、そのビューでエンティティに子を追加できます。ユーザーがページの[保存]ボタンをクリックするまで、データベースに変更をコミットしません。
私は、私が理解しているObjectContextを永続させないことを選択しました。基本的には、エンティティを取得してセッション状態にするか、それに相当する場所に保存し、そこに変更を加え、ユーザーがページを終了したときにそれらをデータベースに送信します。
これを行う方法についてのご意見はありますか?Entity Frameworkエンティティの遅延コミット
0
A
答えて
1
ViewDataコレクションは、リクエスト間でオブジェクトを永続させるための一時的な「スクラッチパッド」です。これはSessionオブジェクトと同じように動作しますが、寿命が短くなります。
デフォルトのMVCプロジェクトでは、ViewData ["Message"]を使用してインデックスビューにメッセージを表示するホームコントローラで、この例を見ることができます。
0
私は同様の問題を探してこの質問に出くわしました。他の誰かが同じ状況にある場合には、Josh Eの回答が間違っています.ViewDataは複数のリクエストにまたがって永続化されません。同じリクエスト内で発生するViewにデータを渡すためだけです。 TempData ISは複数の要求にわたって永続化されますが、その中に格納されている値は一度読み込まれるとクリアされます。
エンティティフレームワークがサポートされているかどうかはわかりませんが、セッションには(シリアル化可能な)オブジェクトを保存できます。ただし、これらのオブジェクトのライフタイムは、手動で削除しない限り、セッションの存続時間に依存します。また、これはかなりの量のメモリを占有する可能性があります。最も望ましい方法は、これを管理できる永続性フレームワークを使用することです。 Entity Frameworkがそれを実行できるかどうかはわかりません。 ADOに取り組んでいる私たちのために、私はまだ良い解決策を見つける必要があります。
関連する問題
- 1. Entity Frameworkの遅延ロード間違ったエンティティ
- 2. Entity Frameworkと遅延ロードの問題
- 3. Entity Framework遅延読み込み
- 4. SQL Server CEのEntity Framework - 遅延ロードとパフォーマンスの考慮事項
- 5. Entity Frameworkでの遅延読み込みの問題
- 6. Entity Frameworkの6遅延ロードの問題に
- 7. MySQLのEntity FrameworkのC#外部キーデータロード遅延誤差
- 8. AsNoTracking()を使用したEntity Frameworkの遅延読み込み
- 9. Entity Frameworkの遅延ロードされたコレクションが時々ヌル
- 10. Entity Framework 6遅延読み込みナビゲーションプロパティの自動フィルタリング
- 11. Entity Framework:遅延読み込み "ソリューション"の問題
- 12. Entity Frameworkの遅延読み込み問題
- 13. Entity Frameworkのカウント子エンティティは
- 14. Entity Frameworkコアシード3関連エンティティ
- 15. Entity Frameworkの - どのようにエンティティ
- 16. モッキングコード最初のEntity Frameworkのエンティティ
- 17. Entity Framework - 遅延読み込みまたは追加の非同期/待機クエリメソッド?
- 18. Entity Framework:なぜ "仮想"がデフォルトで遅延ロードされるのですか?
- 19. Entity Frameworkの(ネストされたエンティティをロード)
- 20. Entity Framework with mysql、PKなしのエンティティ
- 21. Entity Frameworkの:エンティティIDはSaveChangesメソッド
- 22. ADO Entity FrameworkでのSQLの遅さ
- 23. Play Framework 2.5遅延付きコンテンツのストリーミング
- 24. Entity Frameworkが参照プロパティとコレクションプロパティを遅延ロードしていません
- 25. Entity Frameworkのlinqクエリが遅すぎる
- 26. Entity Frameworkのクエリが遅すぎる
- 27. Entity Framework Skipメソッドの実行が遅い
- 28. 自己追跡エンティティと遅延ロード
- 29. Entity Framework 6.0でエンティティを削除する
- 30. 遅延エンティティを初期化する標準JPAメソッド
ああ、もう少し意味がありますが、私はMVCでもう一つの概念上の問題があるようです。 –