2009-07-03 9 views
5

ho questo codiceASP.net C# più documenti su un oggetto Una risposta

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 fare clic su 3 pulsanti per ottenere i 3 file txt. C'è un modo per inviare tutti e 3 su una risposta?

risposta

6

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

Si noti che Gmail gestisce questo facendo zippare dinamicamente i file. Dovresti anche tu. http://forums.asp.net/t/1240811.aspx

2

Questo può essere fatto in base all'articolo "Download di più file in una richiesta http" su motobit.com.

Tuttavia, non è il modo in cui è stato progettato HTTP e il seguito di questi passaggi potrebbe interrompersi in qualsiasi momento a seconda della configurazione del client e del server.

Problemi correlati