0

StructureMap IoC を介して SqlCacheDependency を有効にしようとしています。LinqToSql を使用しています。Linq キャッシングを処理するためのコードを作成しましたが、これをグローバルに配置する必要があるため、SqlCacheDependency を設定する方法がよくわかりません。 asaファイル

void Application_Start(object sender, EventArgs e) 
{
    string connectionString = WebConfigurationManager.
        ConnectionStrings["Catalog"].ConnectionString;
    SqlDependency.Start(connectionString);
}

ただし、私のリポジトリは、web アプリケーションではなく単なるライブラリ (.dll) として global.asa を使用していません。

これを行う方法はありますか?たぶん、application_start メソッドの内容をリポジトリのコンストラクターに入れますか?

4

1 に答える 1

1

そのコードをコンストラクターに移動しても問題ありません。

明示的な初期化を必要とするものには、静的な Initialize() メソッドを配置することがよくあります。私のコードが外部使用に対して健全である場合、Initialize メソッドが使用される前にメソッドが呼び出されると、独自の UninitializedException もスローします。

私の Global.asax には、結果としていくつかの blah.Initialize() 呼び出しが含まれる傾向があります。

于 2008-10-24T14:34:06.810 に答える