WebClient.DownloadFileAsync无法引发异常
时间:2020-03-05 18:46:13 来源:igfitidea点击:
我一直试图在项目中解决的一个奇怪问题,我对WebClient.DownloadFileAsync的调用似乎被忽略了,并且没有引发异常。到目前为止,我已经能够确定这可能是由于目标文件夹不存在,但是从Webclient.DownloadFileAsync的MSDN文档的外观来看,这仍然应该引发异常。我确实找到了一个MSDN论坛线程,该线程似乎暗示已经知道这种情况的发生,但是似乎没有任何解决方案。任何想法可能会发生什么?
解决方案
回答
在Async方法中,不引发异常,而是将异常传递给EventArgs对象中的回调。
回答
在查看MSDN和所涉及的源代码后,此问题已解决。以前,该应用程序仅实现DownloadProgressChangedEventHandler来跟踪剩余的下载量。事实证明,这是问题的根本原因,因为AsyncCompletedEventHandler是发生异常时调用的内容,并且未实现此事件处理程序将使我们没有错误通知。