C# 为Unity注入类调用构造函数
这是我的MS Unity代码,注册了IDatabase接口的两个实现。EmpCatalog的构造函数实现其中一个数据库,并使用Unity resolve方法创建C# 为Unity注入类调用构造函数,c#,dependency-injection,unity-container,C#,Dependency Injection,Unity Container,这是我的MS Unity代码,注册了IDatabase接口的两个实现。EmpCatalog的构造函数实现其中一个数据库,并使用Unity resolve方法创建 IUnityContainer objContainer = new UnityContainer(); objContainer.RegisterType<EmpCatalogue>(); objContainer.RegisterType<IDatabase, Database>(); objContain
IUnityContainer objContainer = new UnityContainer();
objContainer.RegisterType<EmpCatalogue>();
objContainer.RegisterType<IDatabase, Database>();
objContainer.RegisterType<IDatabase, XmlDatabase>();
EmpCatalogue emp = objContainer.Resolve<EmpCatalogue>();
empcatalog
的构造函数如下所示
public EmpCatalogue(IDatabase idb)
{
this.idb = idb;
}
我不确定如何实例化在另一个类的Unity容器中注册的类。我应该重构我的代码以避免这种情况,还是有办法获得
empcatalog
在UI\u控制器
类中使用的引用?实现empcatabase
需要哪些<代码>数据库
或XmlDatabase
?当empcatalog
得到另一个实现时会发生什么?它会继续工作还是会中断?IDatabase
实现需要哪些empcatalog
功能<代码>数据库或XmlDatabase
?当empcatalog
得到另一个实现时会发生什么?它会继续工作还是会坏?
public EmpCatalogue(IDatabase idb)
{
this.idb = idb;
}