【发布时间】:2010-10-21 16:21:53
【问题描述】:
我正在使用微软的 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 中注册(我不想要 IDataContext 的 3 个实例)。
【问题讨论】:
标签: c# .net dependency-injection unity-container constructor-injection