我正在查看本教程,但不太了解如何创建一个可以为我提供接口的单独实现的工厂。
http://stefanoricciardi.com/2011/01/21/ninject-mini-tutorial-part-1/
public class IJob {
...
}
public class JobImpl1 : IJob {
...
}
public class JobImpl2 : IJob {
...
}
using (IKernel kernel = new StandardKernel()) {
kernel.Bind<IJob>().To<JobImpl2>();
var job = kernel.Get<IJob>();
}
我的目标是创建一个包装这个 Ninject Kernel 的工厂类,这样我就可以根据我是在单元测试环境还是实时环境中提供不同的 IJob 接口实现。但是,我还想将 Ninject 隐藏在工厂包装器中,以便其余代码不依赖于 Ninject。