我想知道是否有人知道为什么我的代码在执行fileStream.Read调用时会抛出异常的答案,并显示消息“流已处理”
我可以列出文件夹中的文件,并使用我的浏览器访问 fileUrl 工作正常。不涉及代理。UnifiedFile 只是 VirtualFile 的一个子类,它来自我使用的 CMS。(这是我正在尝试下载的图像)
FtpWebRequest fileRequest = (FtpWebRequest)FtpWebRequest.Create(fileUrl);
fileRequest.Method = WebRequestMethods.Ftp.DownloadFile;
fileRequest.Credentials = credentials;
fileRequest.EnableSsl = this.EnableSsl;
fileRequest.UseBinary = true;
fileRequest.UsePassive = true;
fileRequest.KeepAlive = true;
fileRequest.Proxy = null;
using (FtpWebResponse fileResponse = (FtpWebResponse)fileRequest.GetResponse())
{
using (Stream fileStream = response.GetResponseStream())
{
UnifiedFile createdFile = PictureManager.Instance.CreateOriginalFile(name);
using (Stream targetStream = createdFile.Open(FileMode.OpenOrCreate))
{
byte[] buffer = new byte[2048];
// Read the file
while (true)
{
int bytesRead = fileStream.Read(buffer, 0, buffer.Length);
// Reached end of stream, close
if (bytesRead == 0)
break;
targetStream.Write(buffer, 0, bytesRead);
}
}
}
}
编辑:发现错误;“GetResponseStream”是对前一个请求完成的,因此是错误的请求。多哈
谢谢大家的“奶奶帮助”;-)(瑞典语表达,所以不知道它是否真的适用于英语)