2009-07-03 20 views
5

tôi có mã nàyASP.net C# Nhiều tài liệu về One Response Object

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(); 
} 

nhưng tôi có 3 tài liệu mà tôi cần phải gửi cho khách hàng. Tôi không muốn làm cho người dùng nhấp vào 3 nút để có được chúng các tập tin 3 txt. Có cách nào để gửi tất cả 3 trên một phản ứng?

Trả lời

6

Không, các tệp đính kèm nhiều phần để tải xuống (như trong email) không được hỗ trợ vì lý do bảo mật. Nó được gọi là "tải xuống theo ổ đĩa".

Lưu ý rằng Gmail xử lý việc này bằng cách tự động nén các tệp. Bạn cũng nên. http://forums.asp.net/t/1240811.aspx

2

Điều này có thể được thực hiện theo bài viết "Tải xuống nhiều tệp trong một yêu cầu http" trên motobit.com.

Tuy nhiên, đó không phải là cách HTTP được thiết kế và làm theo các bước đó có thể bị hỏng bất kỳ lúc nào tùy thuộc vào cấu hình máy khách và máy chủ.

Các vấn đề liên quan