[转]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>


 

posted @ 2012-04-26 16:00  黑武飞翔  阅读(141)  评论(0编辑  收藏  举报