Asp.net 核心 2.2 api 无法集成 miniprofiler、dapper 和 mySql 来工作
Asp.net core 2.2 api not able to integrate miniprofiler, dapper and mySql to work
我正在尝试让 miniprofiler 和 Dapper 在 MySql 上协同工作以分析 sql 语句。
我已经设法让 miniprofiler 和 swagger 一起工作,但是由于某些原因,dapper 生成和执行的 sql 没有被拦截,我相信这是因为 Miniprofiler.Current 总是 returns 由于某种原因为空。
我想知道是否还有其他人可以提供帮助。
附上示例项目。
运行 docker 手动撰写和 运行 api。
测试api下载=>https://gofile.io/?c=Qf6boJ
第一个问题是 app.UseMiniprofiler()
需要在 app.UseMvc
之前
第二个问题是数据库连接工厂必须如下所示:
public IDbConnection Create()
{
return new StackExchange.Profiling.Data.ProfiledDbConnection(
new MySqlConnection(_storageSettings.ConnectionString),
MiniProfiler.Current
);
}
我使用的包如下:
<PackageReference Include="Dapper" Version="2.0.30" />
<PackageReference Include="MySqlConnector" Version="0.61.0" />
<PackageReference Include="Microsoft.AspNetCore" Version="2.2.0" />
<PackageReference Include="MiniProfiler.AspNetCore.Mvc" Version="4.1.0" />
我正在尝试让 miniprofiler 和 Dapper 在 MySql 上协同工作以分析 sql 语句。
我已经设法让 miniprofiler 和 swagger 一起工作,但是由于某些原因,dapper 生成和执行的 sql 没有被拦截,我相信这是因为 Miniprofiler.Current 总是 returns 由于某种原因为空。
我想知道是否还有其他人可以提供帮助。
附上示例项目。
运行 docker 手动撰写和 运行 api。
测试api下载=>https://gofile.io/?c=Qf6boJ
第一个问题是 app.UseMiniprofiler()
需要在 app.UseMvc
第二个问题是数据库连接工厂必须如下所示:
public IDbConnection Create()
{
return new StackExchange.Profiling.Data.ProfiledDbConnection(
new MySqlConnection(_storageSettings.ConnectionString),
MiniProfiler.Current
);
}
我使用的包如下:
<PackageReference Include="Dapper" Version="2.0.30" />
<PackageReference Include="MySqlConnector" Version="0.61.0" />
<PackageReference Include="Microsoft.AspNetCore" Version="2.2.0" />
<PackageReference Include="MiniProfiler.AspNetCore.Mvc" Version="4.1.0" />