c# - PRISM 7 log4net 集成
问题描述
在以前的 PRISM 版本中,可以创建自定义 Log4Net 适配器类(派生自ILoggerFacade
)并覆盖CreateLogger
抽象Prism.Bootstrapper
类的受保护方法,如下所示:
protected override ILoggerFacade CreateLogger()
{
return new Log4NetAdapter();
}
在较新的 PRISM 7 版本中,该类的所有方法Bootstrapper
都移至PrismApplicationBase
该类。但是,CreateLogger
再也找不到虚拟方法了。
问题:如何将 PRISM 7 配置为使用自定义 Log4Net 适配器?
解决方案
该CreateLogger
方法在 Prism 7 中不再存在。您可以ILoggerFacade
通过RegisterTypes
在您的PrismApplication
.
protected override void RegisterTypes(IContainerRegistry containerRegistry)
{
containerRegistry.RegisterSingleton<ILoggerFacade, CustomLogger>();
}
如果您之前已经创建了记录器的实例,则可以像这样注册它。
containerRegistry.RegisterInstance(logger);
推荐阅读
- reactjs - 如何能够通过单击表reactjs的行来进入详细视图
- android - 表达式或语句中出现意外的标记“sha1”。用于为 facebook 开发者帐户应用程序生成 keyhash
- r - 可以使用什么方法在一页上打印多个 eclust 图?
- python - 如何检查哪个 Python 解释器 Spyder 在其控制台上运行?
- html - ngStyle table based on arrays value
- python - 拆分和展平字符串列表
- hazelcast-jet - Is it possible that Sources.mapJournal() is slow for frequently updating of IMap?
- php - Split String at Last Space before Delimiter Using preg_split?
- javascript - 弹性容器中的反应选择
- visual-studio-code - VueCLI 3 - Eslint Prettier