我正在使用Ionic.Zip库将所有文件压缩到一个文件夹中,所以我这样做:
using (ZipFile zip = new ZipFile())
{
foreach(var i in consultaPDF)
{
var fileRoute = carpeta + i.vRutaArchivo;
zip.AddFile(fileRoute, "Document");
}
zip.Save(Response.OutputStream);
}
我想要做的只是下载zip文件。我不想保存它。我怎么才能下载它?此致
我将其更改为:
using (ZipFile zip = new ZipFile())
{
foreach(var i in consultaPDF)
{
var fileRoute = carpeta + i.vRutaArchivo;
zip.AddFile(fileRoute);
}
MemoryStream output = new MemoryStream();
zip.Save(output);
return File(output, "application/zip", "sample.zip");
}
正确下载了Zip,但是当我尝试打开它时:
文件格式未知或已损坏
答案 0 :(得分:1)
您需要在将zip保存到
后重置流位置以启动using (ZipFile zip = new ZipFile())
{
foreach(var i in consultaPDF)
{
var fileRoute = carpeta + i.vRutaArchivo;
zip.AddFile(fileRoute);
}
MemoryStream output = new MemoryStream();
zip.Save(output);
output.Seek(0, SeekOrigin.Begin);
return File(output, "application/zip", "sample.zip");
}