ASP.NET Core 1.1将所有DbContext查询记录到输出窗口

时间:2017-02-22 09:04:52

标签: entity-framework asp.net-core

使用DbContext时,如何将所有查询记录到输出?

过去,我在Visual Studio 2015的“输出”窗口中获取所有查询(SQL)。我不知道它何时停止。

public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory, DbSeeder dbSeeder)
{
    loggerFactory.AddConsole(Configuration.GetSection("Logging"));
    loggerFactory.AddDebug();

和appsettings.json:

  "Logging": {
    "IncludeScopes": false,
    "LogLevel": {
      "Default": "Debug",
      "System": "Information",
      "Microsoft": "Information"
    }

This无效。我认为this表示日志应该输出。

编辑:

我认为没有一些解决办法是不可能的。 GitHub1GitHub2

现在我使用SQL Server Profiler。

1 个答案:

答案 0 :(得分:0)

将appsettings.json中的Microsoft LogLevel设置为.valueDebug。仅当没有更具体的级别,并且实体框架查看Microsoft级别时,才使用默认的LogLevel。

Verbose是根据您传入的Logging部分将受影响的日志打印到stdout的原因。