【问题标题】:NLog singleton to Castle WindsorNLog 单例到温莎城堡
【发布时间】:2014-08-16 11:25:42
【问题描述】:
我对 CastleWindsor 安装程序有疑问。现在我有 Nlog 记录器的课程。
public class Log
{
public static Logger Instance = LogManager.GetCurrentClassLogger();
}
我想把它转换成城堡,但我不知道如何为这种情况创建 IWindsorInstaller。
【问题讨论】:
标签:
castle-windsor
ioc-container
nlog
【解决方案1】:
将Castle Logging Facility 与 Castle NLog 集成一起使用(均可从 nuget 获得)。然后,您可以将接口 Castle.Core.Logging.ILogger 注入到您的对象中。您不会使用实际的 NLog ILogger,而是使用 Castle Windsor 的抽象。
我现在无法在办公室访问我的 git 存储库进行检查,但这应该是添加到 WindsorInstaller 的行:
container.AddFacility<LoggingFacility>(f => f.LogUsing(LoggerImplementation.NLog).WithConfig("nlog.config"));