私は4つのプロジェクトを持っています依存性の注入とプロジェクト構造が
- コア
- のStructureMap
インフラストラクチャ(サービス):
- コア
- 外部依存
コンソール:
- コア
- DependencyResolver
Requierements:
私だけDependencyResolverでのStructureMapを使用しようとしています。 さらに、コンソールアプリケーションはInfrastuctureについて何も知ってはいけません。
コンソールアプリケーションでStructureMapを参照したくないときは、ServiceLocatorを構築する必要があります。 DependencyResolverで
私はインスタンスを取得したい私のコンソールアプリケーションでのStructureMapレジストリものを呼び出すための責任があるブートストラップ(登録)
を持っています。このために私はStructureMapを参照する必要があります。もう一つの方法は、StructureMapsの解決メソッドの周りに小さなラッパーを書くことです。
コンソールをStructureMapから切り離す他の方法はありますか?
少し工夫されています。あなたのコードはどのように見えますか?依存関係リゾルバが構造マップをすでにカプセル化している場合、サービスロケータが必要なのはなぜですか? – SimonC
http://bootstrapper.codeplex.com/ –
名前依存関係リゾルバは、コンポーネントがどのような責任を負うかを考慮して最良の選択ではありません。現時点では、唯一の責任は依存関係を登録することです。ですから、私の質問は、依存性注入の解決の詳細です。 – Rookian