castle-windsor – 将依赖项注入静态类

需要使用Windsor容器设置静态属性依赖关系的配置?

我现在有以下类,我想要注册Logger属性.

static class StuffDooer 
{
   static ILogger Logger { get; set; }

   static StuffDooer() { Logger = NullLogger.Instance; }
}

这是我的配置,虽然这个工具似乎自动查找实例属性没有问题,静态版本没有被设置.

<facility id="logging"
          type="Castle.Facilities.Logging.LoggingFacility,Castle.Facilities.Logging"
          loggingApi="nlog"
          customLoggerFactory="Castle.Services.Logging.NLogIntegration.NLogFactory"
          configFile="Configuration/nlog.config" />
StuffDooer.Logger = container.Resolve<ILoggerFactory>().GetLogger(typeof(StuffDoer));

如果你觉得这很丑,那就是正确的反应.静态和IoC不混合,与酒精和驾驶相同.

相关文章

迭代器模式(Iterator)迭代器模式(Iterator)[Cursor]意图...
高性能IO模型浅析服务器端编程经常需要构造高性能的IO模型,...
策略模式(Strategy)策略模式(Strategy)[Policy]意图:定...
访问者模式(Visitor)访问者模式(Visitor)意图:表示一个...
命令模式(Command)命令模式(Command)[Action/Transactio...
生成器模式(Builder)生成器模式(Builder)意图:将一个对...