asp.net中怎么计算每个页面的执行时间

asp.net中怎么计算每个页面的执行时间,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

具体分析如下:

public class PerformanceMonitorModule : IHttpModule
{
 public void Init(HttpApplication context)
 {
  context.PreRequestHandlerExecute += delegate(object sender,EventArgs e)
  {
   //Set Page Timer Star
   HttpContext requestContext = ((HttpApplication)sender).Context;
   Stopwatch timer = new Stopwatch();
   requestContext.Items["Timer"] = timer;
   timer.Start();
   };
  context.PostRequestHandlerExecute += delegate(object sender, EventArgs e)
  {
   HttpContext httpContext = ((HttpApplication)sender).Context;
   HttpResponse response = httpContext.Response;
   Stopwatch timer = (Stopwatch)httpContext.Items["Timer"];
   timer.Stop();
   // Don't interfere with non-HTML responses
   if (response.ContentType == "text/html")
   {
    double seconds = (double)timer.ElapsedTicks / Stopwatch.Frequency;
    string result_time = string.Format("{0:F4} sec ", seconds);
    RenderQueriesToResponse(response,result_time);
   }
  };
 }
 void RenderQueriesToResponse(HttpResponse response, string result_time)
 {
  response.Write("<div style=\"margin: 5px; background-color: #FFFF00\"");
  response.Write(string.Format("<b>Page Generated in "+ result_time));
  response.Write("</div>");
 }
 public void Dispose() { /* Not needed */ }
}

关于asp.net中怎么计算每个页面的执行时间问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。