Skip to content

dotnet 如何调试 SmartSql 的实际执行 SQL 语句

Updated: at 08:22,Created: at 04:06

在使用 SmartSql 中的 SQL 语句是支持进行属性替换,在调试时如何拿到实际执行的 SQL 命令

只需要在 appsettings.json 中将 LogLevel 的 Default 设置为 Debug 等级,可以在运行时看到从开发者编写的 SQL 语句加上参数的实际 SQL 语句,大概内容如下

dbug: SmartSql.Middlewares.PrepareStatementMiddleware[0]
Statement.Id:[User.GetEntity],Sql:
Select * From T_User Where Id=@Id
Parameters:[Id=1]
Sql with parameter value:
Select * From T_User Where Id=1

如果存在 appsettings.Development.json 文件,那么请在调试时更改 appsettings.Development.json 文件,大概代码如下

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

本文使用的 SmartSql 是在 GitHub 完全开源 https://github.com/dotnetcore/SmartSql


知识共享许可协议

原文链接: http://blog.lindexi.com/post/dotnet-%E5%A6%82%E4%BD%95%E8%B0%83%E8%AF%95-SmartSql-%E7%9A%84%E5%AE%9E%E9%99%85%E6%89%A7%E8%A1%8C-SQL-%E8%AF%AD%E5%8F%A5

本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。 欢迎转载、使用、重新发布,但务必保留文章署名 林德熙 (包含链接: https://blog.lindexi.com ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请与我 联系