Я использую следующий код для загрузки файла с удаленного ftp-сервера:
FtpWebRequest request = (FtpWebRequest)WebRequest.Create(serverPath);
request.KeepAlive = true;
request.UsePassive = true;
request.UseBinary = true;
request.Method = WebRequestMethods.Ftp.DownloadFile;
request.Credentials = new NetworkCredential(userName, password);
using (FtpWebResponse response = (FtpWebResponse)request.GetResponse())
using (Stream responseStream = response.GetResponseStream())
using (StreamReader reader = new StreamReader(responseStream))
using (StreamWriter destination = new StreamWriter(destinationFile))
{
destination.Write(reader.ReadToEnd());
destination.Flush();
}
Файл, который я загружаю, представляет собой dll, и моя проблема в том, что он каким-то образом изменяется этим процессом. Я знаю это, потому что размер файла увеличивается. У меня есть подозрение, что этот участок кода виноват:
destination.Write(reader.ReadToEnd());
destination.Flush();
Может ли кто-нибудь предложить какие-либо идеи относительно того, что может быть не так?