Je tente de télécharger un fichier de manière asynchrone à l'aide de la classe WebClient. J'ai ajouté des gestionnaires d'événements pour DownloadProgressChanged et DownloadFileCompleted. Si j'appelle client.CancelAsync dans le gestionnaire d'événement de progression du téléchargement, j'obtiens une exception ObjectDisposedException, me disant que le fichier est fermé. Comment puis-je annuler correctement un téléchargement de fichier asynchrone?System.Net.WebClient.CancelAsync throws ObjectDisposedException - "Impossible d'accéder à un fichier fermé."
1
A
Répondre
2
Il s'avère que ObjectDisposedException est levé, intercepté et ignoré par WebClient si le fichier est téléchargé suffisamment rapidement pour que les événements de modification de progression soient toujours traités après la fermeture du fichier.