zoukankan      html  css  js  c++  java
  • asp.net core 3.1 打印EFCore执行的sql

    1、StartUp.cs类里定义个全局变量:

    using Microsoft.Extensions.Logging;
            public static readonly ILoggerFactory MyLoggerFactory
    = LoggerFactory.Create(builder =>
    {
    #if DEBUG
        builder.AddConsole();
    #endif
    });

    2、ConfigureServices里添加Mysql上下文时,添加日志:

               // 添加mysql的dbcontext上下文
                services.AddDbContextPool<IDbContext, ApplicationDbContext>(options =>
                {
                    options.UseMySql(Configuration.GetConnectionString("Default"), sqlOptions =>
                    {
                        sqlOptions.EnableRetryOnFailure(3, TimeSpan.FromSeconds(30), new[] { 2 });
                    }).UseQueryTrackingBehavior(QueryTrackingBehavior.NoTracking).UseLoggerFactory(MyLoggerFactory);
                }, 128);

    3、第1步,我们只是在Debug模式下才打印,所以我们在F5运行之前,需要调整调试模式,不要选择 IIS Express,选择自己的项目web名称的那个,如下图:

    4、接下来F5运行,打开页面的同时会有黑屏(类似CMD)的调试界面,会打印相应的日志,以及EFCore执行转换的sql脚步。

  • 相关阅读:
    0xx_nodeJS
    0xx_jQuery
    0xx_正则表达式
    0xx_ES6
    centos重启关机命令
    tomcat服务开机启动脚本
    mysql授权总结
    centos创建文件命令
    svn如果无法连接有可能导致右键卡
    简单导出excel
  • 原文地址:https://www.cnblogs.com/puzi0315/p/13488173.html
Copyright © 2011-2022 走看看