File 通过FTP传输PGP文件时出错:基础连接已关闭:接收时发生意外错误

File 通过FTP传输PGP文件时出错:基础连接已关闭:接收时发生意外错误,file,ftp,transfer,pgp,File,Ftp,Transfer,Pgp,我正在尝试通过FTP上传PGP加密文件。但我收到如下错误消息: 基础连接已关闭:接收时发生意外错误。 我正在使用以下代码并在第行获得错误: 流ftpStream=response.GetResponse() 有人能尽快帮我吗 以下是代码示例: FtpWebRequest request = WebRequest.Create("ftp://ftp.website.com/sample.txt.pgp") as FtpWebRequest; request.UsePassive = true

我正在尝试通过FTP上传PGP加密文件。但我收到如下错误消息:

基础连接已关闭:接收时发生意外错误。

我正在使用以下代码并在第行获得错误:

流ftpStream=response.GetResponse()

有人能尽快帮我吗

以下是代码示例:

FtpWebRequest request =
  WebRequest.Create("ftp://ftp.website.com/sample.txt.pgp") as FtpWebRequest; 
request.UsePassive = true;    
FtpWebResponse response = request.GetResponse() as FtpWebResponse;    
Stream ftpStream = response.GetResponse();    
int bufferSize = 8192;    
byte[] buffer = new byte[bufferSize];    
using (FileStream fileStream =
       new FileStream("localfile.zip", FileMode.Create, FileAccess.Write))
{
    int nBytes;
    while((nBytes = ftpStream.Read(buffer, 0, bufferSize) > 0)
    {
        fileStream.Write(buffer, 0, nBytes);
    }
}
问候,,
Sumeet

为什么要使用
GetResponse()
上传? 您至少需要
request.Method=WebRequestMethods.Ftp.UploadFile
request.GetRequestStream()

ftp.UsePassive = true;
ftp.Method = WebRequestMethods.Ftp.UploadFile;
ftp.KeepAlive = false;
ftp.UseBinary = true;
ftp.UsePassive = true;
ftp.Timeout = int.MaxValue;
ftp.ReadWriteTimeout = int.MaxValue;
ftp.Proxy = null;
ftp.Credentials = new NetworkCredential(values.UserName, values.Password);