0

我正在构建一个 Windows 服务。

我正在尝试使用 miniprofiler,拦截 ado.net 调用并将消息传递给我的应用程序的日志记录系统。

所有 miniprofiler 需要做的就是调用一个静态方法 Log(string text)。

我浏览了以下帖子并学习了如何拦截 ado.net 调用:

使用 MiniProfiler 进行直接 ADO.net 调用

似乎唯一未解决的难题是让 miniprofile 调用我的 log 方法。我怎样才能做到这一点?

我浏览了网站 http://miniprofiler.com/,但文档很少。

4

1 回答 1

2

简而言之:这不是 MiniProfiler 旨在做的事情,因为那不是分析。

但是,您很幸运在这里实现了 MiniProfiler。您可以实现IDbProfiler自己只调用记录器。只有少数几种方法。这是 MiniProfiler 的实现

如果您的实现只是调用您的日志记录方法,您可以重用为 MiniProfiler 构建的所有 ADO.NET 位,如下所示:

IDbProfiler logger = new YourLogger();
var conn = new SqlServerConnection(myConnectionString);
var profiledConn = new ProfiledDbConnection(cnn, logger);
// ...do stuff with profiledConn
于 2017-06-11T21:27:37.570 回答