EFCore查看生成的sql语句

在使用efcore时,需要引入相应nuget包,如果你用的是.net core调试,那么可以引入 Microsoft.Extensions.Logging 这类包中的Microsoft.Extensions.Logging.Console 包,若是想在调试窗口看到ef core 执行的语句,可以 换成 Microsoft.Extensions.Logging.Debug

1.在dbcontext类或者继承类上面添加静态方法:

//输出到debug输出
public static readonly LoggerFactory LoggerFactory =
       new LoggerFactory(new[] { new DebugLoggerProvider((_, __) => true) });
// 输出到Console
public static readonly LoggerFactory LoggerFactory =
       new LoggerFactory(new[] { new ConsoleLoggerProvider((_, __) => true,true) });

2.然后再添加类中实例方法重写

protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
    base.OnConfiguring(optionsBuilder);
    optionsBuilder.UseLoggerFactory(LoggerFactory);
}


posted @ 2019-08-15 11:09  行走在0和1之间  阅读(841)  评论(0)    收藏  举报