1

Entity Framework などの O/RM で使用される「Context Per Request」パターンのように、データベースを開いIDbConnectionて現在のリクエストで呼び出されたすべてのメソッドで使用し、DI コンテナーがそれを で破棄できるようにしても問題ありませんか?Application_EndRequest

または、各メソッドで接続を開いたり閉じたりする必要がありますか?

4

2 に答える 2

0

リクエストで接続を作成し、ページのアンロードイベントがトリガーされたときにそれを破棄することをお勧めします。そのようにして、不要なリソースを処分します。

この方法に従う必要があります:-

  • Page_PreInit をオーバーライドします。接続を初期化して開き、新しいトランザクションを開始します。

  • Page_Load をオーバーライド: データベースを読み取り、コレクションを作成します。

  • Page_Unload をオーバーライド: トランザクションをコミット/ロールバックし、接続を閉じます。

  • Dispose のオーバーライド: IDisposable を実装し、基本オブジェクトを破棄します。

于 2013-01-25T23:40:51.663 に答える