0
Greatings!使用Ihttphandler下載多個文件
我正在製作一個報告腳本,它在按鈕單擊上運行多個報告(pdf)。這些報告是在Web服務器上創建的,然後我希望用戶可以選擇下載文件。我已經制定了從服務器下載一個文件的腳本。但我不知道如何下載多個文件? (可能會有大約50)
我運行一個報告後,我將用戶重定向到http處理程序腳本。
Response.Redirect("Download.ashx?ReportName=" + "WeeklySummary.pdf");
public class Download : IHttpHandler {
public void ProcessRequest(HttpContext context)
{
StringBuilder sbSavePath = new StringBuilder();
sbSavePath.Append(DateTime.Now.Day);
sbSavePath.Append("-");
sbSavePath.Append(DateTime.Now.Month);
sbSavePath.Append("-");
sbSavePath.Append(DateTime.Now.Year);
HttpContext.Current.Response.ClearContent();
HttpContext.Current.Response.ContentType = "application/pdf";
HttpResponse objResponce = context.Response;
String test = HttpContext.Current.Request.QueryString["ReportName"];
HttpContext.Current.Response.AppendHeader("content-disposition", "attachment; filename=" + test);
objResponce.WriteFile(context.Server.MapPath(@"Reports\" + sbSavePath + @"\" + test));
HttpContext.Current.Response.Flush();
HttpContext.Current.Response.Clear();
HttpContext.Current.Response.End();
}
public bool IsReusable { get { return false; } }
}
在此先感謝您,請讓我知道您是否希望再看到我的腳本。
我曾經想過只是調整HTTP Headler的負載時間,但不知道是否有更好的方法來做到這一點。想想我會壓縮他們。感謝您的鏈接! – flyersun 2010-10-20 14:09:47