コントロールコンテナの独自の反転を構築しようとしています。現在、オブジェクトとそのタイプをディクショナリに保存し、要求されたときに参照を解決しています。しかし、参照または新しいインスタンスを解決できるようにしたいと考えています。Activator クラスを使用して新しいインスタンスを作成できます。しかし、解決するオブジェクトのコンストラクターが 1 つ、2 つ、または任意のパラメーターを取る場合はどうなるでしょうか。
たとえば、次のようなことが言えるようになりたいです。
Container.register<IFoo>(new Foo(Proxy));
Container.register<IBar>(new Boo(Proxy, DataThing));
そしてそれを次のように解決します
IFoo MyFoo = Resolver.resolve<IFoo>();
IBar MyBar = Resolver.resolve<IBar>();
MyFoo は指定されたパラメータProxyでインスタンス化され、 MyBar はProxyとDataThingでインスタンス化されます。
それを実現するために解決は何をしなければなりませんか?