Hello,
I'm downloading a large (30MB) file via a proxy. The proxy does not send any data to my client until it has received all of the file from the remote server. When I download the file the first time the ftp client often gives the following error:
2007-07-13 14:43:49,435 [3580] EnterpriseDT.Net.Ftp.FTPException: The FTP client has not yet connected to the server. The requested action cannot be performed until after a connection has been established.
at EnterpriseDT.Net.Ftp.FTPClient.CheckConnection(Boolean shouldBeConnected)
at EnterpriseDT.Net.Ftp.FTPClient.ValidateTransferOnError()
at EnterpriseDT.Net.Ftp.FTPClient.Get(String localPath, String remoteFile)
The corresponding log from the edtFTPNet log file is:
DEBUG [FTPControlSocket] 13 Jul 2007 14:28:45.384 : ---> TYPE I
DEBUG [FTPControlSocket] 13 Jul 2007 14:28:45.463 : 200 Type set to IMAGE.
DEBUG [FTPControlSocket] 13 Jul 2007 14:28:45.463 : ---> PASV
DEBUG [FTPControlSocket] 13 Jul 2007 14:28:45.463 : 227 Entering Passive Mode (10,81,39,2,134,153)
DEBUG [FTPControlSocket] 13 Jul 2007 14:28:45.463 : Server supplied address=10.81.39.2
DEBUG [FTPControlSocket] 13 Jul 2007 14:28:45.463 : Server supplied port=34457
DEBUG [FTPControlSocket] 13 Jul 2007 14:28:45.463 : NewPassiveDataSocket(10.81.39.2,34457)
DEBUG [FTPControlSocket] 13 Jul 2007 14:28:45.463 : ---> RETR /V2.5/IVYDB.20070705D.zip
DEBUG [FTPControlSocket] 13 Jul 2007 14:28:46.744 : 150 Opening BINARY data connection for \V2.5\IVYDB.20070705D.zip (30088422 bytes)
DEBUG [FTPClient] 13 Jul 2007 14:43:49.435 : Transferred 30088422 bytes from remote host
The file itself downloads fine - despite the error. If I then download the file again (when it is then cached by our proxy, so downloads in a much shorter time) I get no error. I have set the Timeout property on the FTPClient, but wonder if I need to set it somewhere else as well?
Thanks in advance for any help.