hol*_*ira 5 c# monitoring winforms
我需要构建一个Windows窗体应用程序来测量完全加载网页所需的时间,这样做的最佳方法是什么?
这个小应用程序的目的是以预定的间隔监视网站中的某些页面,以便能够事先知道Web服务器或数据库服务器是否出现问题.
附加信息:
我不能使用商业应用程序,我需要开发它,以便能够将结果保存到数据库并基于此信息创建一系列报告.
webrequest解决方案似乎是我正在使用的方法,但是,能够测量完全加载页面所需的时间(图像,css,javascript等)会很好.知道如何做到这一点?
Cra*_*g T 20
如果您只想记录获取基本页面源所需的时间,可以围绕秒表包装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;
Run Code Online (Sandbox Code Playgroud)
但是,这不会考虑下载额外内容的时间,例如图像.
[编辑]作为替代方案,您可以使用WebBrowser控件并测量从触发执行.Navigate()和DocumentCompleted事件之间的时间.我认为这还将包括额外内容的下载和渲染时间.但是,我没有大量使用WebBrowser控件,只是在您反复请求同一页面时才知道是否必须清除缓存.