在进行了一些搜索后,我遇到了同样的问题,并实现了一些代码,但是没有现成的东西。有上的NuGet包MiniProfiler.Integrations我想与大家分享。
更新V2 :它支持与其他数据库服务器一起使用,对于MySQL,它需要具有MiniProfiler.Integrations.MySql
以下是使用SQL Server的步骤:
1.实例化连接
var factory = new SqlServerDbConnectionFactory(_connectionString);
using (var connection = DbConnectionFactoryHelper.New(factory, CustomDbProfiler.Current))
{
// your code
}
2.完成所有工作后,如果需要,将所有命令写入文件
File.WriteAllText("SqlScripts.txt", CustomDbProfiler.Current.ProfilerContext.BuildCommands());
Dapper目前没有仪器点。正如您所指出的,这可能是由于我们(作为作者)使用迷你探查器来处理这个问题。但是,如果它有所帮助,mini-profiler的核心部分实际上是设计为架构中立的,我知道其他人使用它与winforms,wpf,wcf等 - 这将使您可以访问分析/跟踪连接包装。
从理论上讲,添加一些毯子捕获点是完全可能的,但我关注两件事:
null
)会产生很大的影响当然,你可以做的另一件事是:从mini-profiler中窃取连接包装器代码,并用: Debug.WriteLine
等替换profiler-context东西。