在使用EF Core的时候,很多时候需要知道EF Core实际执行的SQL语句是什么。

Simple Logging是EF Core提供的一项功能,可用于在开发和调试应用程序时轻松获取日志。这种形式的日志记录需要最少的配置,而不需要其他NuGet包。

功能一瞥

配置起来非常简单,只需在DbContext.OnConfiguring实现中调用LogTo方法即可:

public class DefaultDbContext : DbContext
{protected override void OnConfiguring(DbContextOptionsBuilder options){...options.LogTo(Console.WriteLine);}...
}

LogTo需要一个Action委托接受字符串,比如Console.WriteLine,你也可以编写自定义方法决定如何输出日志。

筛选

默认情况下,Simple Logging记录Debug或更高级别的每条日志。这样会导致输出的日志过多,对调试没有任何帮助,可以限制只记录Information或更高级别的日志:

options.LogTo(Console.WriteLine, Microsoft.Extensions.Logging.LogLevel.Information);

查询标记

但是,这样还是会产生很多日志。这时我们可以结合查询标记,帮助我们快速定位到需要的日志:

 var users = context.User.TagWith("查询所有用户").ToList();

如果觉得这篇文章对你有所启发,请关注我的个人公众号”My IO“,记住我!

EF Core使用Simple Logging输出日志相关推荐

  1. EF Core 2.0中Transaction事务会对DbContext底层创建和关闭数据库连接的行为有所影响...

    数据库 我们先在SQL Server数据库中建立一个Book表: CREATE TABLE [dbo].[Book]([ID] [int] IDENTITY(1,1) NOT NULL,[BookNa ...

  2. EF Core的学习之路01

    本文章是我听B站杨中科的所做的笔记 杨中科B站视频链接:.NET 6教程,.Net Core 2022视频教程,杨中科主讲_哔哩哔哩_bilibili 什么时ORM 1.说明:本课程需要你有数据库.S ...

  3. 一步步学习EF Core(2.事务与日志)

    前言 上节我们留了一个问题,为什么EF Core中,我们加载班级,数据并不会出来 其实答案很简单,~ 因为在EF Core1.1.2 中我们在EF6.0+中用到的的延迟加载功能并没有被加入,不过在EF ...

  4. 杨中科.NET5视频教程更新了:DI、配置系统、Logging、EF Core等

    我的.NET5视频教程又更新了一些内容了,包含依赖注入.配置系统.日志系统以及部分Entity Framework Core的内容.Entity Framework Core还没全讲完,会继续更新. ...

  5. Python + logging 输出到屏幕,将log日志写入文件(亲测)

    日志 日志是跟踪软件运行时所发生的事件的一种方法.软件开发者在代码中调用日志函数,表明发生了特定的事件.事件由描述性消息描述,该描述性消息可以可选地包含可变数据(即,对于事件的每次出现都潜在地不同的数 ...

  6. Python3之logging输出写入日志

    Python3之logging模块浅析 目录 Python3之logging模块浅析 简单用法 日志与控制台同时输出 一个同时输出到屏幕.文件的完成例子 日志文件截取 日志重复打印问题解决 问题分析 ...

  7. python3 logging输出到文件_python3:logging模块 输出日志到文件

    python自动化测试脚本运行后,想要将日志保存到某个特定文件,使用python的logging模块实现 参考代码: importloggingdefinitLogging(logFilename,e ...

  8. python logging动态变更输出日志文件名

    2019独角兽企业重金招聘Python工程师标准>>> python作为一门非常容易上手的脚本语言,日志输出更是简单,logging模块,简单的设置配置和属性,就能实现到控制台输出日 ...

  9. python文件输出log_Python同时向控制台和文件输出日志logging的方法

    #-*- coding:utf-8 -*- import logging # 配置日志信息 logging.basicConfig(level=logging.DEBUG, format='%(asc ...

最新文章

  1. 深入浅出 Redis client/server交互流程
  2. MySQL—事务并发问题
  3. 孤立森林异常检测之入门
  4. 对研发人员很有震撼和启发的公式
  5. 云原生系列「五」我为啥又看上了serviceMesh?
  6. Html点击按钮时 修改某个标签的 click点击事件
  7. SQL Server的历史– SQL Server功能的演变
  8. [转]OpenCV学习笔记大集锦
  9. 打靶(递归算法) | 八皇后(回溯算法)
  10. 今天解决了首页无头像被显示的问题
  11. 带着梦想,追逐属于你我的那份真彩
  12. java虚拟机工作原理_java虚拟机原理及工作原理都是什么?java虚拟机如何运行?...
  13. ae 的动画导出为html,Bodymovin v5.5.3 – AE导出Web动画插件+使用教程
  14. 何凯明最新一作MAE解读系列2之代码实践
  15. 工作转正申请自我评价
  16. 致远OA表单自定义函数(明细表去重拼接)
  17. Thief Book - 上班摸鱼偷偷看小说的利器
  18. ES中的Multi_match深入解读:best_fields、most_fields、cross_fields用法一览
  19. 【转】10种吓跑财神的漏财风水
  20. 解决报错:OSError: Failed to open file b‘D:\\\xe5\xad\xa6\xe4\xb9\xa0\\scipy-_7cm39vc‘(图文并茂版详细版!!)

热门文章

  1. 熊猫烧香是天才作品吗?
  2. python删除两个excel表中的相同元素_python筛选出两个文件中重复行的方法
  3. UITabBar Contoller
  4. VMware虚拟机VMware Authorization Service不能启动问题
  5. 【codevs1230】元素查找
  6. (10.1)Python学习笔记二
  7. gRPC编码初探(java)
  8. 转载 一篇UI规范文件
  9. 顺利达成微软HacktoberFest 2018
  10. ipad和iphone切图_如何在iPhone和iPad上密码保护照片