实体框架核心2始终记录SQL

时间:2017-09-25 07:48:31

标签: c# asp.net entity-framework

升级到asp.net +实体框架核心2后,我发现了一些奇怪的东西。 之前(在1.1中),我必须使用DbContextOptionsBuilder.UseLoggerFactory来记录由ef生成的SQL查询,但是现在,我不再需要这样做了,默认情况下会记录SQL查询。

记录仪工厂设置为“信息”

loggerFactory.AddFile("Logs/MyApp-{Hour}.txt", LogLevel.Information);

SQL查询不应该与Debug相关联吗?这是正常的吗?有没有办法保持日志记录级别信息并禁用SQL日志记录?

1 个答案:

答案 0 :(得分:1)

我发现实体框架应该在"信息"中记录SQL。 我将loggerFactory更改为

loggerFactory.AddFile("Logs/MyApp-{Hour}.txt", LogLevel.Information, new Dictionary<string, LogLevel>()
            {
                { "Microsoft", LogLevel.Error },
                { "System", LogLevel.Error }
            });

所以#34; Microsoft&#34;或&#34;系统&#34;在它的命名空间中只记录错误(或上面的任何内容)