我很不确定我应该如何处理这个新的Unity容器。抽象工厂和统一依赖注入
继承人厂我有:
class DataCopierFactory : IDataCopierFactory
{
private readonly IUnityContainer _container;
//not mad on binding the factory to the container, but feck it
public DataCopierFactory(IUnityContainer container)
{
_container = container;
}
//return a data copier that will transfer data from any DB to any other DB
public IDataCopier createDataCopier(int i)
{
switch(i)
{
case 1:
return new ScheduleDataCopier(new LTEEFContext()); //somehow resolve the LTEEFContext..
//case 2:
//
default:
throw new InvalidOperationException("Parameter -t=" + i + " does not exist");
}
}
}
当我打电话的createDataCopier方法,并传递一些枚举,我想使用统一的容器来解决我的各类IDataCopiers的DB对象上下文。
我该怎么做?
我应该在班级中打电话给工厂吗?或者注入unitycontainer并在那一点解析不同的DB对象上下文。
IDatacopier的每个实现都有一个IDBContext作为构造函数,我想基本上注入它,但允许我为Datacopier的不同实现更改上下文。
希望这是有道理的... :) 在此先感谢 尼尔