冲洗流的ZIP

时间:2012-08-23 12:14:19

标签: c# asp.net .net

我正在尝试刷新刚刚创建的Zip文件,并且遇到问题: a)它实际上并不是Flush(我之前使用过CSV文件的代码,一切运行良好)

以下是代码:

      outputMemStream.Position = 0;

      System.Web.HttpResponse Resp = System.Web.HttpContext.Current.Response;

      Resp.ClearContent();
      Resp.ClearHeaders();
      Resp.ContentType = "application/zip";
      Resp.AddHeader("Content-Disposition", "attachment; filename=\"download.zip\"");

      //byte[] buff = outputMemStream.ToArray();
      //File.WriteAllBytes(path, buff);

      outputMemStream.CopyTo(Resp.OutputStream);
      outputMemStream.Close();
      outputMemStream.Dispose();

      Resp.Flush();
      Resp.End();

正确创建了流,因为我能够保存它,并且可以稍后检查它看起来没问题......只是我的浏览器不允许我下载它的那件事非常烦人。 干杯,为你提供帮助!

1 个答案:

答案 0 :(得分:0)

  

它位于aspx页面中(在.cs后面的代码中),在其中一个方法中   在按下“全部导出”按钮后发生这种情况

这可能是个问题。该页面同时呈现您的文件和您的控件(包括您的“全部导出”按钮)。

尝试将用于下载的逻辑移动到不执行任何操作但返回文件的其他页面或处理程序。