我的应用程序用于下载文件。下载文件后,将这些文件的大小与XML文件中的元素进行比较以进行验证。XML文件具有一个元素,用于每个具有"size“属性的文件。这是下载的文件应该是的大小。这些文件在普通以太网连接上验证良好。当使用缓慢的无线连接时,文件总是无法通过验证,这意味着下载的文件不是它们应该有的大小。为什么WebClient DownloadFileAsync()方法不能在缓慢或不稳定的网络上成功下载文件?除了一遍又一遍的重试之外,还有别的办法吗?
foreach (var file in fileList.OrderBy(x => x.Name))
{
var client = new WebClient();
client.DownloadFileCompleted += (o, a) => Task.Factory.StartNew(() => OnDownloadFileCompleted());
client.DownloadFileAsync(new Uri(AppStrings.FileServer + file.Name), AppStrings.FilePath + file.Name);
webClientList.Add(client); //used to dispose later, after all files complete.
}发布于 2013-04-13 03:01:14
你想一次下载太多的文件。试着批量下载。AsyncDownloadCompleted事件对象上还有一个error属性,它将告诉您异常是什么。
https://stackoverflow.com/questions/15510050
复制相似问题