我一直在使用MiniProfiler来衡量网站的性能。当我从版本1.9升级到2.0,它停止工作。我将命名空间从MvcMiniProfiler更改为StackExchange.Profiling。但是当我加载一个页面时,fiddler显示以下请求有404错误:
GET /local/mini-profiler-resources/jquery.1.7.1.js?v=tNlJPuyuHLy/d5LQjyDuRbWKa0weCpmO3xkO6MH4TtA= HTTP / 1.1
这可以防止结果在页面中呈现。
要使1.9版本的MiniProfiler正常工作,我必须在Web.Config文件中有以下条目(如this post中所述):
<system.webServer> <handlers> <add name="UrlRoutingModule1" path="mini-profiler*.js" verb="*" type="System.Web.Routing.UrlRoutingModule" resourceType="Unspecified" preCondition="integratedMode" /> <add name="UrlRoutingModule2" path="mini-profiler*.css" verb="*" type="System.Web.Routing.UrlRoutingModule" resourceType="Unspecified" preCondition="integratedMode" /> <add name="UrlRoutingModule3" path="mini-profiler*.tmpl" verb="*" type="System.Web.Routing.UrlRoutingModule" resourceType="Unspecified" preCondition="integratedMode" /> </handlers> </system.webServer>
我试图让MiniProfiler 2.0运行配置文件中包含的,并与他们排除,两种方式都没有工作。
这是在我的开发计算机上在IIS Express中运行。
我的应用程序是使用表单安全性的WebForms应用程序。
如何解决这个问题?
解决方法
看起来这是一个常见的问题,只是添加到web.config和它应该很好
Running MiniProfiler with runAllManagedModulesForAllRequests set to false
<system.webServer> ... <handlers> <add name="MiniProfiler" path="mini-profiler-resources/*" verb="*" type="System.Web.Routing.UrlRoutingModule" resourceType="Unspecified" preCondition="integratedMode" /> </handlers> </system.webServer>