如何使ServiceStack MiniProfiler与EF配合使用?

时间:2012-10-24 08:14:55

标签: c# entity-framework entity-framework-4 servicestack

ServiceStack包含内置的令人敬畏的MiniProfiler。但是,它是一个不同的版本,编译到ServiceStack中,在它自己的命名空间中。

我让探查器使用正常的ADO.NET连接,但我正在努力使其与我的Entity Framework 4.2数据上下文一起工作。

通常情况下,人们会使用MiniProfiler.EF NuGet包,但由于它是针对官方MiniProfiler版本构建的,因此无效。

最简单的方法是什么:

  • 在ServiceStack中更换MiniProfiler以获取官方版本(我研究过这个并不容易,因为SS会在某些处理程序中为探查器生成JavaScript)?
  • 或者,使内置的分析器与ServiceStack和Entity Framework一起使用?

2 个答案:

答案 0 :(得分:4)

所以,我没有得到任何好的答案,所以我决定采用的方法是将MiniProfiler.EF移植到ServiceStack上运行。幸运的是,这并没有太大的努力。

结果在这里:https://github.com/driis/ServiceStack.MiniProfiler.EntityFramework

它与MiniProfiler.EF中的代码完全相同,只是调整了命名空间并修复了一些错误以使其编译。要使用,只需将程序集放入项目(而不是MiniProfiler.EF包)中,然后在启动代码中调用MiniProfilerEF.Initialize_EF42() - 全部完成。

当我有时间时,我可能会尝试对ServiceStack.Contrib进行拉取请求,因此它可以包含在那里,可能还有它自己的NuGet包。

答案 1 :(得分:1)

按照你的例子我移植了MiniProfiler.EF6。结果已在GitHub上分享,NuGet package已上传。