加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – 如何在ASP.NET MVC中生成完整的trace.axd?

发布时间:2020-12-16 04:27:00 所属栏目:asp.Net 来源:网络整理
导读:在我的应用程序中,在ASP.NET MVC应用程序中启用 ASP.NET Tracing后,时间计算统计信息被关闭了5000倍. 我有一个页面需要7到9秒才能加载. Firebug和IIS日志文件中的“time-taken”字段都证实了这一点. (这只是返回客户端的页面,而不是任何布局,DOM或脚本执行.)
在我的应用程序中,在ASP.NET MVC应用程序中启用 ASP.NET Tracing后,时间计算统计信息被关闭了5000倍.

我有一个页面需要7到9秒才能加载. Firebug和IIS日志文件中的“time-taken”字段都证实了这一点. (这只是返回客户端的页面,而不是任何布局,DOM或脚本执行.)

但是,当我打开应用程序范围的跟踪(通过web.config)并查看跟踪输出时,从“Begin PreInit”到“End Render”的时间小于0.001秒.

我认为这是因为Trace.axd是在构建WebForms时考虑的,MVC绕过了传统的页面生命周期.

即使我在OnActionExecuting/OnActionExecuted的开始和结束时添加自定义跟踪,时间仍然小于0.1秒.

有谁知道在ASP.NET MVC中我需要挂钩才能让trace.axd输出报告准确的执行时间?

解决方法

可能是动作方法本身的时间不是执行的重要部分.尝试检查OnResultExecuting / OnResultExecuted之间的时间.这基本上是用HTML实际呈现页面的时间,而OnActionExecuting / OnActionExecuted(基本上)是为视图设置数据的时间.

请注意,如果您使用的是LINQ,则数据查询本身可能会延迟到呈现页面(枚举的模型).也就是说,缓慢可能不是由于页面复杂性而是由于数据访问,即使在执行结果时花费了时间.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读