asp.net计算每个页面执行时间的方法

前端技术 2023/09/09 .NET

本文实例讲述了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程序设计有所帮助。

本文地址:https://www.stayed.cn/item/24589

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。