问题 - 通过WebClient或HTTPWebRequest下载大量文件时,下载将随机但经常挂起并提供“System.Net.WebException:操作已超时。”。使用HTTPWebRequest时,我可以通过读取流来判断从ConnectStream.Read方法中抛出此异常。更改方法以读取流,Stream.CopyTo与Stream.ReadByte vs Stream.Read,没有任何影响。
我通过为下载添加一些重试代码来限制此异常对我们的软件有任何影响,但我真的想知道导致此异常的原因是什么?
背景 - 作为自定义数据同步的一部分,我们的软件必须通过HTTPS从我们的在线服务器(IIS7)下载大量zip文件(少于2 mb)。在我们的一台开发机器上,我们遇到了上述问题,但我们并没有在运行相同代码的相同机器上获得它。