跟踪中ASP.MVC中的页面渲染时间

时间:2010-05-24 09:46:35

标签: asp.net tracing

我想在asp.net mvc应用程序中检查每个页面的渲染时间。

我正在使用asp.net跟踪。我已经覆盖了BaseController类上的OnActionExecuting和OnActionExecuted方法。

protected override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            string controler = filterContext.RouteData.Values["controller"].ToString();
            string action = filterContext.RouteData.Values["action"].ToString();
            StartTime =System.DateTime.Now;

            System.Diagnostics.Trace.Write(string.Format("Start '{0}/{1}' on: {2}", controler, action, System.DateTime.Now.UtilToISOFormat()));
        }
        protected override void OnActionExecuted(ActionExecutedContext filterContext)
        {
            string controler = filterContext.RouteData.Values["controller"].ToString();
            string action = filterContext.RouteData.Values["action"].ToString();
            var totalTime = System.DateTime.Now - this.StartTime;
            System.Diagnostics.Trace.Write(totalTime.ToString());
            System.Diagnostics.Trace.Write(string.Format("End '{0}/{1}' on: {2}", controler, action, System.DateTime.Now.UtilToISOFormat()));

        }
在OnActionExecuted方法中,我得到总时间。我如何在http://localhost:51335/Trace.axd报告中显示这段时间?

即使我在<%@ Page%>中设置了Trace="true"在每一页上也是。