我对此很新,所以请耐心等待。这是我的代码。即使选择了多个文件,它也只下载一个文件。
foreach(String fileName in fileNameList)
{
FileInfo updateFile = new FileInfo("C:/inetpub/wwwroot/w4/DanyaWebReports/Data/" + fileName);
Response.ContentType = "application/octet-stream";
Response.AddHeader("content-disposition", "attachment;filename=\"" + Path.GetFileName(updateFile.FullName) + "\"");
Response.AddHeader("content-length", updateFile.Length.ToString());
Response.TransmitFile(updateFile.FullName);
Response.Flush();
}
答案 0 :(得分:11)
这不是要走的路,你可以压缩所有选定的文件服务器端并只下载zip文件,或者你可以尝试使用客户端代码打开多个下载窗口,但在这种情况下我觉得有些浏览器可以可能会阻止弹出窗口阻止弹出窗口。
等等,您创建了一个名为download.aspx的页面(甚至只是一个http处理程序),然后通过JavaScript多次调用它:window.open("download.aspx?id=id of file1");
window.open("download.aspx?id=id of file2");
点击此处查看您可以进一步详细说明的一些建议:ASP.NET Download Multiple files