2011-11-24 48 views
4

美好的一天。 我正在使用DownloadFileAsync處理文件下載類。 在正常情況下,一切正常。 但是,當我正在下載文件並禁用網絡連接時,下載進度僅停留在無限的時間,不會引發任何錯誤或調用任何回調。 任何想法如何處理這種情況? 非常感謝。WebClient DownloadFileAsync掛起

_client.Proxy = WebRequest.DefaultWebProxy; 
_client.DownloadProgressChanged += (sender, argv) => { actionCallback(argv.ProgressPercentage); } 
_client.DownloadFileCompleted += (sender, argv) => { 
     if (argv.Error != null) { 
      _exc = argv.Error; 
     } 
     set event 
} 
Task.Factory.StartNew(() => { 
    _client.DownloadFileAsync(request, targetFileName); 

    thread sync 

    if (_exc != null) { 
     logger.ErrorException(exc); 
     throw; 
    } 

該問題出現在Vista和2k8下。在Win7上一切正常。

+0

你能發表一些代碼嗎? – slugster

+0

我面臨同樣的問題,您是否找到解決問題的方法? –

回答

1

WebClient.OpenReadCompleted事件添加事件處理程序。如果發生錯誤,OpenReadCompletedEventArgs對於錯誤具有布爾屬性。

+0

沒有幫助:(OpenReadCompleted也沒有提出 – rapt0r

+0

嘗試在app.config中打開[System.Net Logging](http://msdn.microsoft.com/en-us/library/ty48b824.aspx)。會有一些調試信息可以從那裏使用。 – Simon