私は.NetアプリケーションでDIを実装しようとしています。私は自分のデータアクセス層に3つのAPIクラスを持っています。私は一度にそれらのいずれかを使用しなければならない。私は条件付き統一決議をしようとしていますが、それを達成する方法は不明です。私の3つの注入されたクラスを条件付きで管理する方法をいくつかのボディに教えてください。あなたはこのようなあなたの登録コードを記述することができるように複数の依存関係を解決するためのUnity Containerの設定方法は?
は現在、私はちょうど、way-
IUnityContainer _container = new UnityContainer();
_container.RegisterType(typeof(IPolicyAdminApi), typeof(SomeApiclass1));
_container.RegisterType(typeof(IPolicyAdminApi), typeof(SomeApiclass2));
_container.RegisterType(typeof(IPolicyAdminApi), typeof(SomeApiclass3));
IPolicyAdminApi policyAdmin = _container.Resolve<IPolicyAdminApi>();
return policyAdmin;
私は提案を投稿しましたが、なぜ3つの方法で1つのサービスが実装されているのか自分自身に尋ねるべきです - 3つの別々のサービス(つまり3つの別々のインターフェイス)を持つべきではないと確信していますか? ? –