2011-02-05 35 views
0

我使用Web客户端下载从网页一些文字,像这样:C#Web客户端运行缓慢第一次

WebClient wc = new WebClient(); 
string str = wc.DownloadString("http://blah"); 

现在虽然工作绝对没问题,一个问题,我与它面对的是第一次初始化和下载字符串非常慢 - 大约需要5秒。之后,它在半秒内下载文本。

有什么办法可以解决这个问题吗?我真的很喜欢它一直很快,所以它不会让用户烦恼。

我正在使用C#.NET 4.0,如果重要的话。

+0

您试图获取ASP.NET的远程站点? – 2011-02-05 11:20:28

+0

我会做一些性能分析,看看它是否需要5秒直到响应或远程部分。 – 2011-02-05 11:31:47

回答

0

下列溶液从here

采取什么你看到的是由自动代理发现造成的。当应用程序启动时,最初 我们将使用哪个代理,然后使用该代理或后续请求的代理脚本。当您关闭应用程序时,脚本或代理基础架构不在 ,我们必须在应用程序启动时再次执行此操作。

你有几个选择。

  1. 您可以通过进入IE设置并关闭自动检测代理设置选项来关闭自动代理。这是在工具 - > Internet选项 - >连接选项卡 - >局域网设置按钮。取消选中自动检测设置。

  2. 如果您可以确定一个静态代理服务器[trhat不会动态更改其名称],您可以指定该代理 WebProxy wp = new WebProxy(,......);

WebClient.Proxy = wp;