静的 Dictionary を使用して実装された単純な ServiceLocator クラスを含む自家製のフレームワークがあります。これは WinForms 環境用に開発されたもので、私が望んでいたことをうまく実行しました。
フレームワークを ASP.Net フレームワークとして使用する場合、これは大惨事であることがわかります。静的変数であるディクショナリは、最初の使用時にインスタンス化され、すべての ASP.Net アプリケーションが同じディクショナリを使用します。これは私の設計意図ではありません。
たとえば、Web アプリケーションは DB 監査サービス IAuditService の登録を試みます。エラー!!サービスはすでに最初のユーザーによって登録されています! ASP.Net 環境で発生する可能性のある静的変数の問題のヒントにすぎません。
Autofac IOC を試してみました。Autofac (または他の IOC) を使用して静的変数の問題を回避できますか?
BP....