Domanda

Ho questo codice

private void writeReport(IReport report, string reportName)
{
    string reportString = report.makeReport();
    ASCIIEncoding encoding = new ASCIIEncoding();
    byte[] encodedReport = encoding.GetBytes(reportString);
    Response.ContentType = "text/plain";
    Response.AddHeader("Content-Disposition", "attachment;filename="+ reportName +".txt");
    Response.OutputStream.Write(encodedReport, 0, encodedReport.Length);
    Response.End();
}

ma ho 3 documenti che ho bisogno di inviare al client. Preferirei non dover rendere l'utente clicca 3 pulsanti per farli i 3 file txt. C'è un modo per inviare tutti e 3 su un reponse?

È stato utile?

Soluzione

No, allegati multipart per il download (come come in e-mail) non sono supportati per motivi di sicurezza. Si chiama "drive-by download".

Si noti che Gmail gestisce questo da zippare in modo dinamico il backup dei file. Dovresti anche tu. http://forums.asp.net/t/1240811.aspx

Altri suggerimenti

Questo può essere fatto secondo l'articolo di "Scarica file multipli in una richiesta HTTP" a motobit.com .

Tuttavia non è come HTTP è stato progettato e seguendo questi passaggi potrebbe rompersi in qualsiasi momento, a seconda della configurazione client e server.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top