Greatings!télécharger plusieurs fichiers en utilisant Ihttphandler
Je travaille sur un script de reporting qui exécute un certain nombre de rapports (pdf) en cliquant sur le bouton. Les rapports sont créés sur le serveur Web, puis je voudrais que l'utilisateur ait la possibilité de télécharger les fichiers. J'ai élaboré le script pour télécharger un fichier du serveur. Mais je ne suis pas sûr de savoir comment télécharger plusieurs fichiers? (il y en aura probablement environ 50)
Après avoir exécuté un rapport, je redirige l'utilisateur vers un script de gestionnaire 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; } }
}
Merci d'avance, s'il vous plaît laissez-moi savoir si vous souhaitez voir plus de mon script.
Je pensais juste à caler les charges de Headler HTTP de fois, mais je ne savais pas s'il y avait une meilleure façon de le faire ou non. Pensez que je vais les compresser. Merci pour le lien! – flyersun