2015-07-21 52 views
-2

我想在c#中创建一个代码,以查找加载网站需要多少时间。 (不在特定的网络浏览器中。) 任何人都可以帮助我吗? 谢谢页面加载后多少时间

+5

欢迎来到StackOverflow。不幸的是,我们不写代码。我们要做的就是帮助您使用已有的任何代码。因此,编写代码,如果遇到任何问题,我们会在这里帮忙。 – Ben

+0

在你的'Page'指令中启用'Trace'。 –

回答

2

如果您只是想记录获取基本页面源所需的时间,您可以围绕stopwatch打包HttpWebRequest。例如。

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(address); 

    System.Diagnostics.Stopwatch timer = new Stopwatch(); 
    timer.Start(); 

    HttpWebResponse response = (HttpWebResponse)request.GetResponse(); 

    timer.Stop(); 

    TimeSpan timeTaken = timer.Elapsed; 

但是,这不会考虑下载额外内容(例如图像)的时间。你将不得不更深入地去做这件事,而这个问题没有代码,所以我不能再引导你走下去。但是,如果你只是想用简约的代码来源,这个例子会很好。

你也可以,如果你打开跟踪

如果你有在ASP.NET页面的控制,你可以打开跟踪记录所有这些信息。在那里你会得到一些有关页面生命周期(包括时间戳)和其他有用的分析信息的信息。

在跟踪转Page指令的网页,在你的aspx文件的顶部:

<%@ Page Trace="true" %> 

或动态代码:

Trace.IsEnabled = true; 

还是在全球范围内的应用程序的Web设置此.config:

<configuration> 
<system.web> 
    <trace enabled="true" requestLimit="40" localOnly="false"/> 
</system.web> 
</configuration> 

然后你可以使用一个工具,如Microsoft's LogParser或任何其他阅读xml跟踪文件。您也可以在代码中使用trace listeners。只是另一个想法:)