【发布时间】:2011-12-29 10:05:08
【问题描述】:
我正在制作一个 zip 文件,我想返回一个可下载的文件,但我无法弄清楚返回文件的部分,即使我尝试了一些我在网上找到的示例。
这是我现在使用的代码,它可以在没有$.post() 的情况下工作,但我需要它与 jquery 一起工作。欢迎所有想法
$('.zipFiles').live('click', function () {
$.post('/Home/ZipFiles');
});
//return a file
public FileResult ZipFiles()
{
var filesToZip = Session["DownloadQue"] as List<string>;
var savedZipFile = Server.MapPath("~/App_Data/") + DateTime.Now.Minute + ".zip";
if (filesToZip != null && filesToZip.Count > 0)
using (var zip = new ZipFile(savedZipFile))
{
foreach (string item in filesToZip)
{
var path = Server.MapPath(Path.Combine("~/Pics/", item));
zip.AddFile(path, @"\cf");
}
zip.Comment = "this was made online";
zip.Save();
}
return File(savedZipFile, System.Net.Mime.MediaTypeNames.Application.Zip);
}
【问题讨论】:
-
无法使用ajax下载文件
-
您有 25 个问题没有被接受的答案。你不喜欢别人帮助你,因为你不尊重他们吗?
-
@Rune FS,你有没有想过我没有得到正确的答案?我宁愿不接受答案,也不愿接受一半作为一个答案,然后其他有同样问题的人因为那一半作为解决方案而陷入困境。所以我肯定尊重其他用户。我希望这足以回答你
-
我在写评论之前看到的所有内容实际上确实有一个解决方案的答案,或者您可以增强问题以使其可以回答,或者您要求的东西是不可能的。
标签: c# jquery asp.net-mvc-3 asp.net-mvc-2