現在のソリューションには18のプロジェクトがあり、それらのほとんどには独自の構成ファイル(app.configまたはweb.config)があります。各プロジェクトは、単一の共有BLLアセンブリを使用します。Autofacを使用して依存関係を処理していますが、構成を適切に管理する方法がありません。構成エントリはほぼ同じですが、値が異なります。一部のプロジェクトはカスタム構成セクションを使用し、一部は使用しません。
私は結局:
- 単一のautofacbootstrapperクラスを作成して、構成ファイルラッパーを除くすべての依存関係を登録します。
- IConfigurationインターフェイスを使用して(すべてのプロジェクトで参照される)個別のアセンブリを作成します。
- IConfigurationの各プロジェクト独自の実装を作成します。
- 共有ブートストラップを介した各プロジェクトの適切な場所でのブートストラップ依存関係。
- ブートストラップ登録後に、プロジェクト自体のIConfiguration実装を個別に登録します。
私は一般的にAutofacとDIに非常に慣れておらず、複雑さと拡張性の間の適切なバランスを見つけるよう努めています。
構成ファイルを管理するためのより良い方法はありますか?
ありがとうございました。