我真的很喜欢我所看到的关于MvcMiniProfiler的东西。我喜欢在非web应用程序(windows服务、单元测试等)上使用SQL监控功能。这是可能的吗,还是需要HTTP环境?明显的区别是结果交付,但如果我可以将结果序列化为JSON或诸如此类的格式,那就好了。
我拼凑了一个简单的单元测试,试图让它工作,但即使在执行MiniProfiler.Start()之后,MiniProfiler.Current似乎总是空的。
我是不是找错人了?
发布于 2011-12-16 05:14:59
问得好。核心(分析器实例和连接包装器)没有绑定到http。如果你能创建你自己的实例,它应该都能工作。然而,所有的UI代码都是围绕着web应用程序编写的。
我知道有人在WPF,winforms等中使用它,所以它应该工作得很好。然而,你还需要找出一个逻辑上的“对我来说是测量的东西的单位”。在web应用中,很明显:一个请求。
请注意,MiniProfiler.Current纯粹是为了方便(您可以将实例放在任何地方),但我非常确定我们可以创建您自己的抽象(而不是http上下文)。
(去检查代码)
啊,是的,我们开始吧:
public static MiniProfiler Current
{
get
{
MiniProfiler.Settings.EnsureProfilerProvider();
return MiniProfiler.Settings.ProfilerProvider.GetCurrentProfiler();
}
}所以你可以提供你自己的ProfileProvider,然后.Current就可以工作了。
https://stackoverflow.com/questions/8526609
复制相似问题