我正在向客户端发送文件以供下载。文件可能很大(高达几GB),所以我发送它的块。这是我的代码:
//code to get data in resp stream.
using (Stream inputStream = resp.GetResponseStream())
{
if (System.IO.File.Exists(TargetFile))
{
System.IO.File.Delete(TargetFile);
}
using (FileStream fs = System.IO.File.Open(TargetFile, FileMode.Create, FileAccess.ReadWrite))
{
byte[] buffer = new byte[SegmentSize];
int bytesRead;
while ((bytesRead = inputStream.Read(buffer, 0, SegmentSize)) > 0)
{
fs.Write(buffer,0,bytesRead);
}
Response.AddHeader("Content-Disposition", "Attachment;filename=targetFileName.pdf");
return File(fs, "application/pdf");
}
}
当我点击链接下载时,它给出了我上面的错误。我尝试不返回任何内容,在这种情况下,它下载文件,但文件的大小为零。错误在最后一行。
答案 0 :(得分:0)
我将上传的文件附加到电子邮件时遇到了同样的问题。将以下内容添加到web.config中:
<system.web>
<httpRuntime executionTimeout="90" maxRequestLength="20000" useFullyQualifiedRedirectUrl="false" requestLengthDiskThreshold="8192"/>
</system.web>