I am trying to download a client's data to my local machine (programatically) and their webserver is very, very slow which is causing a timeout in my WebClient
object.
Here is my code:
WebClient webClient = new WebClient();
webClient.Encoding = Encoding.UTF8;
webClient.DownloadFile(downloadUrl, downloadFile);
Is there a way to set an infinite timeout on this object? Or if not can anyone help me with an example on an alternate way to do this?
The URL works fine in a browser - it just takes about 3 minutes to show.
You need to use
HttpWebRequest
rather thanWebClient
as you can't set the timeout onWebClient
without extending it (even though it uses theHttpWebRequest
). Using theHttpWebRequest
instead will allow you to set the timeout.