私はasp.net-mvcアプリケーションに取り組んでいます。linq データ コンテキストは、構造マップによってサービス オブジェクトに渡されます。私は、ハイブリッドのスコープを持つように設定されています。これはすべて正常に機能します。
protected override void configure()
{
ForRequestedType<AetherDataContext>()
.TheDefaultIs(() => new AetherDataContext())
.CacheBy(InstanceScope.Hybrid);
}
問題は、私がメモリを使い続けていることです。IDisposable インターフェイスが実際に呼び出されているかどうか疑問に思っています。
誰でもアイデアはありますか?
私のメモリ例外を引き起こしている可能性のあるものについて、誰かが他の考えを持っていなかったのですか?
アップデート:
いくつかの追加情報として、いくつかのメソッドをデータ コンテキストに詰め込んで、そこにブレーキ ポイントを配置しました。
protected override void Dispose(bool disposing)
{
Debug.WriteLine("Disposing: " + DateTime.Now);
base.Dispose(disposing);
}
public new void Dispose()
{
Debug.WriteLine("Disposing: " + DateTime.Now);
base.Dispose();
}
これを正しい方法で行っているかどうかはよくわかりませんが、新しいメソッドが呼び出されると思いますか?
とにかく、どちらのブレーキポイントもヒットしませんでした。ただし、同じクラスのコンストラクターはすべてのリクエストで呼び出されました。理想的ではないと私は考えています。