依存関係の注入にMicrosoftのUnityを使用しており、次のようなことをしたいと思っています。
IDataContext context = _unityContainer.Resolve<IDataContext>();
var repositoryA = _unityContainer.Resolve<IRepositoryA>(context); //Same instance of context
var repositoryB = _unityContainer.Resolve<IRepositoryB>(context); //Same instance of context
IDataContext context2 = _unityContainer.Resolve<IDataContext>(); //New instance
var repositoryA2 = _unityContainer.Resolve<IRepositoryA>(context2);
RepositoryA
そして、RepositoryB
の両方を取るコンストラクタ持っているIDataContext
パラメータを、と私はUnityが、私はそれを渡すことをコンテキストにリポジトリを初期化したいです。また、IDataContext
がUnityに登録されていないことにも注意してください(の3つのインスタンスは必要ありませんIDataContext
)。