[转]Asp.net获取页面执行时间
大家在编程的时候,经常想测试一下自己这个页面的执行时间,特别是在asp.net测试的过程中,
为了解决这个问题,在下总结了一下页面加载执行时间的方法,供大家学习之用!
一、从服务器端得到
1.在global.asax文件中计算时间
DateTime dt; protected void Application_BeginRequest(Object sender, EventArgs E) { dt = DateTime.Now; } protected void Application_EndRequest(Object sender, EventArgs E) { DateTime dt2 = DateTime.Now; TimeSpan ts = dt2 - dt; Response.Write("页面加载的时间" + ts.TotalSeconds.ToString() + " 秒"); }
2.在 aspx.cs中增加如下方法
protected DateTime dt; protected void Page_Load(object sender, EventArgs e) { } protected override void OnPreInit(EventArgs e) { dt = DateTime.Now; base.OnPreInit(e); } protected override void OnLoadComplete(EventArgs e) { base.OnLoadComplete(e); TimeSpan ts = DateTime.Now - dt; Response.Write("加载页面用时:" + ts.TotalMilliseconds); }
二、从客户端来看加载时间
步骤如下:
1.在页面Head部分加入初始时间
<script language=javascript>
var t1 = new Date().getTime();
</script>
2.在Body中加入
<SCRIPT LANGUAGE="JavaScript">
window.onload = function()
{
document.getElementById("TimeShow").innerHTML = "加载本页耗时 "+ (new Date().getTime()-t1) +" 毫秒";
}
</SCRIPT>
3.在需要显示的地方插入一个ID为TimeShow的标签即可
<div id="TimeShow"></div>