查看EFcore生成的sql语句(mysql和sqlserver都可以)
怎么看EFcore生成的sql呢?其实很简单,不用SQL Server Profiler,很麻烦而且只能看sqlserver的,我们可以通过官方提供的日志记录(Microsoft.Extensions.Logging)实现.4.在DbContext文件OnConfiguring连接字符前添加日志UseLoggerFactory(MyLoggerFactory)3. 在DbContext文件里定义一
怎么看EFcore生成的sql呢?其实很简单,不用SQL Server Profiler,很麻烦而且只能看sqlserver的,我们可以通过官方提供的日志记录(Microsoft.Extensions.Logging)实现.
使用 Microsoft.Extensions.Logging.Debug 查看生成的SQL语句
1.先去下载NuGetMicrosoft.Extensions.Logging.Debug包。
2.在Context类引入命名空间
using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Logging.Debug;
3. 在DbContext文件里定义一个日志工厂
public static readonly LoggerFactory MyLoggerFactory = new LoggerFactory(new[] {
new DebugLoggerProvider()
});
4.在DbContext文件OnConfiguring连接字符前添加日志UseLoggerFactory(MyLoggerFactory)
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
if (!optionsBuilder.IsConfigured)
{
optionsBuilder.UseLoggerFactory(MyLoggerFactory).UseMySql("database=student;data source=43.138.224.67;user id=root;password=ww623025;sslmode=none", Microsoft.EntityFrameworkCore.ServerVersion.Parse("5.7.39-mysql"));
}
}
5.总结基本就三步
6. 执行一个插入
可以在控制台看到生成的sql语句
另外还有一种方式使用 Microsoft.Extensions.Logging.Console ,使用方法和本文章说的差不多,大家可以去试试

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐
所有评论(0)