1

asp.net Web サイト プロジェクトで DBContext を広範囲に使用しています。私が通常行うことは、ページ クラスで使用できる dbcontext のインスタンスがあり、ページの読み込み時にそれをインスタンス化し、コード全体で使用することですが、それを破棄することはありません。ページで Pre_Render イベントを使用して dbcontext を破棄するのが賢明でしょうか (その時点で使用されていると思いますか?)

ヒントをありがとう。

解決

そのため、自分の dbcontext を処理する Dotnetnuke モジュール用の小さな拡張クラスを作成することになりました。これはうまく機能しているようですが、これまでのところ、いくつかのモジュールでしかロールアウトしていません。

public class ModuleExt : PortalModuleBase
{
    private BPEntities _ent;
    public BPEntities ent 
    {
        get{
            if (_ent == null)
            {
                _ent = new BPEntities();
            }
            return _ent;
        }
    }
    protected void Page_PreRender(object sender, EventArgs e)
    {
        ent.Dispose();
    }
}

これにより、ent オブジェクト (私の DBContext) を使用するだけで済み、レンダリング前に行われるため、廃棄について心配する必要がなくなります。

4

1 に答える 1