本文实例讲述了asp.net计算每个页面执行时间的方法。分享给大家供大家参考。具体分析如下:
这里的asp.net代码可实现计算每个页面的执行时间,无需要修改页面的相关代码,这段代码会给所有的页面统一加上执行时间显示
- publicclassPerformanceMonitorModule:IHttpModule
- {
- publicvoidInit(HttpApplicationcontext)
- {
- context.PreRequestHandlerExecute+=delegate(objectsender,EventArgse)
- {
- //SetPageTimerStar
- HttpContextrequestContext=((HttpApplication)sender).Context;
- Stopwatchtimer=newStopwatch();
- requestContext.Items["Timer"]=timer;
- timer.Start();
- };
- context.PostRequestHandlerExecute+=delegate(objectsender,EventArgse)
- {
- HttpContexthttpContext=((HttpApplication)sender).Context;
- HttpResponseresponse=httpContext.Response;
- Stopwatchtimer=(Stopwatch)httpContext.Items["Timer"];
- timer.Stop();
- //Don'tinterferewithnon-HTMLresponses
- if(response.ContentType=="text/html")
- {
- doubleseconds=(double)timer.ElapsedTicks/Stopwatch.Frequency;
- stringresult_time=string.Format("{0:F4}sec",seconds);
- RenderQueriesToResponse(response,result_time);
- }
- };
- }
- voidRenderQueriesToResponse(HttpResponseresponse,stringresult_time)
- {
- response.Write("<divstyle=\\"margin:5px;background-color:#FFFF00\\"");
- response.Write(string.Format("<b>PageGeneratedin"+result_time));
- response.Write("</div>");
- }
- publicvoidDispose(){/*Notneeded*/}
- }
希望本文所述对大家的asp.net程序设计有所帮助。