Unity、Prism を使用して分離アプリケーションを構築しています。
私が心配している問題は、サービスにおけるリソース管理です。例で説明するのは簡単です: ある種のデータを提供するインターフェイス IDataRetriever があると想像してください。実装はインスタンスとして登録されます。このインターフェイスの実装は、ファイル (FileDataRetriever)、Sql Server (SqlServerDataRetriever)、さらには単純な辞書など、あらゆるものに基づくことができます。使用する具体的な実装が構成されます (おそらく構成ファイルを使用しますが、問題ではありません)。
アプリケーションが作業を終了すると、サービスの実装に応じて、リソースを解放する必要がある場合があります (接続を閉じる、ファイルを閉じるなど) またはしない場合があります (辞書を使用する場合など)。リソースを解放する必要があります 2.具体的な実装にリソースの割り当て解除が必要かどうか。
ブートストラップが IDisposable を実装し、各サービスで IDisposable の実装をチェックし、すべてのモジュールに対して Dispose を呼び出すシナリオを考えることができます (これは、すべてのモジュールが IDisposable も実装する必要があることを意味します) が、正しくないように見えます。そのようなものを処理する方法(複雑すぎる)?