我正在使用WebClient从网页下载一些文本,如下所示:
WebClient wc = new WebClient();
string str = wc.DownloadString("http://blah");
现在虽然它工作得非常好,但我面临的一个问题是它第一次初始化并下载字符串时它非常慢 - 大约需要5秒钟。之后,它会在半秒内下载文本。
有什么办法可以解决这个问题吗?我真的希望它一直很快,这样对用户来说并不烦人。
如果重要的话,我正在使用C#.NET 4.0。
答案 0 :(得分:0)
以下解决方案取自here
您看到的是由自动代理发现引起的。当应用程序启动时,最初 我们决定使用什么代理,然后使用该代理或代理脚本 后续请求。关闭应用程序时,脚本或代理基础结构已消失 我们必须在下次应用启动时再次执行此操作。
你有几个选择。
您可以通过进入IE设置并关闭自动检测代理设置选项来关闭自动代理。这是在工具 - >互联网选项 - >连接选项卡 - >局域网设置按钮。取消选中自动检测设置。
如果您可以确定静态代理服务器[不动态更改其名称],则可以指定该代理 WebProxy wp = new WebProxy(,......);
WebClient.Proxy = wp;