gpt4 book ai didi

.net-core - 如何通过 NLog 记录 Entity Framework Core 操作

转载 作者:行者123 更新时间:2023-12-03 08:17:02 25 4
gpt4 key购买 nike

我想使用 NLog 以类似于 WebApi Core 的方式记录来自 Entity Framework Core 的 SQL 查询。我该如何设置?

最佳答案

对于使用 Entity Framework Core 进行日志记录,有一些文档 here .

你需要这个:(见文档)

public static readonly LoggerFactory MyLoggerFactory
= new LoggerFactory(new[] {new ConsoleLoggerProvider((_, __) => true, true)});

并使用 NLogLoggerProvider而不是 ConsoleLoggerProvider , 来自这个包裹: https://www.nuget.org/packages/NLog.Extensions.Logging

和这样的事情:

protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
=> optionsBuilder
.UseLoggerFactory(MyLoggerFactory) // Warning: Do not create a new ILoggerFactory instance each time
.UseSqlServer(
@"Server=(localdb)\mssqllocaldb;Database=EFLogging;Trusted_Connection=True;ConnectRetryCount=0");

您还需要加载您的 NLog 配置文件:

NLog.LogManager.LoadConfiguration("nlog.config");

当然你需要一个 nlog 配置(nlog.config 或者可以在 C# 中),检查 https://github.com/NLog/NLog/wiki/Configuration-file为了那个原因。

更新:根据评论效果很好:)

关于.net-core - 如何通过 NLog 记录 Entity Framework Core 操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52495087/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com