【发布时间】:2011-01-07 19:32:54
【问题描述】:
我在服务器上有一个 5Mb 的 pdf,使用 writeFile 下载这个文件给了我 15Mb 的下载量,而传输文件给出了正确的 5Mb 文件大小...
这是由于 writeFile 对服务器上的内存进行了某种解压缩吗?只是想知道是否有人见过同样的事情发生......
(ps是上iis7才注意到的??)
代码正在...
if (File.Exists(filepath))
{
HttpContext.Current.Response.Clear();
HttpContext.Current.Response.ContentType = "application/octet-stream";
HttpContext.Current.Response.AddHeader("content-disposition","attachment;filename=\""+Path.GetFileName(filepath)+"\"");
HttpContext.Current.Response.AddHeader("content-length", new FileInfo(filepath).Length.ToString());
//HttpContext.Current.Response.WriteFile(filepath);
HttpContext.Current.Response.TransmitFile(filepath);
HttpContext.Current.Response.Flush();
HttpContext.Current.Response.Close();
}
【问题讨论】:
-
我也遇到了同样的错误。 IIS 上的压缩设置不影响它。
标签: c# transmitfile