私は Asp.net mvc4 を使用して Web アプリを構築しています...そして、私はこのテーマにかなり慣れていません。
私のモデルはデータベースへの接続を開いています(SQL dbではなく、EFではありません)。
コントローラーでIndex()
モデルのインスタンスを作成し、それをビュー ( return View(model)
) に渡してデータを表示します ... すべて問題ありません。
Index
ページが更新されるたびに呼び出されます (IE では F5)。これは、更新のたびにモデルのインスタンスを作成することを意味します。モデルのMyDB.CloseConnection()
デストラクタに " " への呼び出しが含まれていますが、呼び出されることはありません。
質問: コントローラとモデルの寿命は? (ページが完全に表示されると、デストラクタが呼び出されると思っていました)。ページのライフサイクルに関するさまざまなドキュメントを読みましたが、モデルまたはコントローラーがいつ破棄されるかについての具体的なヒントは見つかりませんでした。
メソッドでモデルの新しいインスタンスを作成することは一般的に良い考えですかController.Index()
、それとも「グローバル」(ユーザー固有ですが)「スペース」に参照を保持する必要がありますか? そのような「空間」とは何でしょう?
ヒントをありがとう、ティロ
(アンサーが「RTFM!」の場合 -> 推奨される M は? ;-)