我们已经开始使用 MiniProfiler,它显示有时,特别是当我们在 Visual Studio 中运行时按下 F5 时,在我们的任何代码执行之前,前 3-5 次对操作的调用非常慢,如下图所示,似乎总是大约为 5,这些是返回图像的操作,但由于 MiniProfiler 一直显示在我们的任何代码执行之前一直在发生,如果我注释掉需要 2050 毫秒的图像,那么另一个需要 0.5 毫秒的图像只需执行此操作长。我们在 web.config 中设置了 debug=false,这没有任何区别。
我们同时使用 ProfilingActionFilter 和 ProfilingViewEngine 但是否有另一种方法来分析这里发生的事情并试图解决?
编辑:我们也在使用 AutoFac,这可能是原因吗,我正在尝试找到一种分析所有内容的方法,以便我可以准确地看到发生这种情况的位置。
编辑:好的,所以我添加了我自己的 ControllerFactory,其中配置文件和路由约束,因为下面的新图像显示所有时间都发生在路由约束或控制器创建之前,在 Application_BeginRequest 之前。我完全不知道花了这么多时间。查看 MVC 管道的这个链接可以留下什么?
http://blog.stevensanderson.com/blogfiles/2007/ASPNET-MVC-Pipeline/ASP.NET%20MVC%20Pipeline.pdf