【发布时间】:2023-03-05 20:12:01
【问题描述】:
我对 .NET 堆栈有点陌生,我想知道 .NET 平台是否有与 slf4j 等效的东西。对我来说,登录到 Facade 并能够根据需要交换日志实现是很有意义的。此外,当我需要使用针对我没有使用的单个日志框架进行编码的第三方库时,slf4j 中可用的封装 API 为我节省了很多时间。
是否有一个项目可以充当 log4net、nLog 和 Enterprise Library 等记录器之间的门面?是否有允许我快捷调用这些库并将它们定向到另一个库的包装器?我应该自己启动一个开源项目来做这件事吗?这个问题是重复的,因为我不知道正确的提问方式吗?相反,使用面向方面编程的常用方法是什么?
【问题讨论】:
-
好问题 - 我也有这个问题。我只花了几分钟就实现了一个 ILog 接口和我最喜欢的 nLog 的实现。让我们创建一个操作系统项目 - 我会加入 :)
-
已经完成了。请参阅下面的 .NET 通用日志记录链接。
-
还有一个.NET的SLF:slf.codeplex.com,基于slf4j。
-
史蒂文,你应该回答这个问题。
-
有
Microsoft.Extensions.Logging作为 ASP.NET Core 的一部分,它有几个可以为已建立的日志框架实现的接口,例如存在Serilog.Extensions.Logging、NLog.Extensions.Logging等我没有尝试过,所以我不知道在 ASP.NET 上下文之外使用它们是否有任何问题。如果不是,我可以看到它成为 .NET 的事实上的日志记录外观