【发布时间】:2014-06-23 15:08:14
【问题描述】:
我有以下两个接口:
public interface ILogger {}
public interface ILoggerFactory {}
ILoggerFactory 包含一个方法GetLogger,它将调用类的Type 作为参数,并返回一个实现ILogger 的记录器实例。现在我想声明一个自动连接所有东西的实例提供程序,这样我就可以将我的记录器直接注入到一个类中。我尝试了以下方式:
Kernel.Bind<ILoggerFactory>().To<MyCustomLoggerFactory>();
Kernel.Bind<ILogger>().ToFactory(() => new LoggerFactoryInstanceProvider());
public class LoggerFactoryInstanceProvider : StandardInstanceProvider {
protected override ... // what goes here?
}
【问题讨论】:
标签: c# logging dependency-injection inversion-of-control ninject