我想一次下载多个压缩文件-而不是将它们放入1个zipfile中。我要他们分开。
我在下面有此代码段,其中输入来自用户选择的报告名称循环。
public static void ExecuteDownloadInBrowser(string reportPrefix)
{
string zippedFilePath = baseZippedFolderPath + reportPrefix + ".zip";
FileInfo file = new FileInfo(zippedFilePath);
if (file.Exists)
{
try
{
HttpContext.Current.Response.Clear();
HttpContext.Current.Response.ClearHeaders();
HttpContext.Current.Response.ClearContent();
HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment; filename=" + file.Name);
HttpContext.Current.Response.AddHeader("Content-Length", file.Length.ToString());
HttpContext.Current.Response.ContentType = "text/plain";
HttpContext.Current.Response.Flush();
HttpContext.Current.Response.TransmitFile(file.FullName);
HttpContext.Current.Response.End();
WriteToLog("Downloadling file: " + file.Name + " in browser succeded");
}
catch(Exception ex)
{
WriteToLog("Error downloading file in browser. Message: " + ex.Message);
}
}
}
这很好用,但是只有1个文件。
这是有道理的,因为一个请求=一个响应之间是一对一的关系。
但是除了将它们全部压缩为1个文件之外,还有什么方法可以使我更窒息吗?
感谢所有帮助。
答案 0 :(得分:0)
每个请求只能有一个响应。这意味着您正在尝试违反该协议。
但是您可以通过浏览器的多个请求来实现。解决方案在于客户端代码。