zip没有告诉我任何问题

时间:2015-06-08 10:15:24

标签: c# asp.net asp.net-mvc entity-framework

这里我有几个图像,我需要压缩这些图像,需要下载它。在这里我使用Ionzip。问题是zip不工作。它没有给我显示任何错误。

mycode的

public bool DownloadImgs()
        {  


        string Path = HttpContext.Current.Server.MapPath("../Content/images/QImages");
        string zippath = HttpContext.Current.Server.MapPath("../Content/images/QImages/zipped/");
        string[] filenames = System.IO.Directory.GetFiles(Path, "*.jpg", SearchOption.AllDirectories);//It returns all the paths of the images.

        using (ZipFile zip = new ZipFile())
        {
            foreach (String filename in filenames)
            {
                ZipEntry e = zip.AddFile(filename, "");
            }
            zip.Save(zippath);//In here i need to download the zipped file.not to save
        } 
}

PS:此应用程序是使用MVC框架构建的

2 个答案:

答案 0 :(得分:2)

您应该将结果zip写入Response流。

来自MVC控制器:

return this.File(zippath, "application/zip");

从ASP.NET处理程序或页面:

Response.TransmitFile(zippath);

另一种选择是直接将zip文件保存到响应流中,这将优化磁盘使用情况。

答案 1 :(得分:0)

您可以将zip文件直接保存到响应输出流:

{{1}}