IOCコンテナなどを介して依存性注入バインディングを作成するための2つの一般的なメカニズムは、XML構成または命令型コードのブロックからのものです。これらの場合、キーと値のペアは明示的です(つまり、キー=要求されたタイプ、値=返されたタイプ)。
それでも、アプリケーション/ IOCコンテナに[IMyClass]キーのみが与えられ、コンテナが一連のアプリケーションアセンブリの依存関係を反映して、名前が一致するすべての具象クラス[MyClass]を見つける3番目の「ヒューリスティック」アプローチがあります。言い換えると、「リターンタイプ」の値は、宣言されるのではなく検出されます。
私が知りたいのは2つあります。
- どのIOCコンテナ(または他の遅延バインディングツール)がヒューリスティックアプローチを許可しますか?このアプローチには、より一般的な名前がありますか?
- 私がリストした3つ以外に、実際に使用されている他のバインディング手法はありますか?