문제

이 코드가 있습니다

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

그러나 고객에게 보내야 할 3 개의 문서가 있습니다. 오히려 사용자가 3 개의 TXT 파일을 가져 오려면 3 개의 버튼을 클릭 할 필요가 없습니다. 한 번의 응답으로 3을 모두 보내는 방법이 있습니까?

도움이 되었습니까?

해결책

NOPE, 이메일과 같이 다운로드 용 첨부 파일은 보안상의 이유로 지원되지 않습니다. "드라이브 바이 다운로드"라고합니다.

Gmail은 파일을 동적으로 감싸서이를 처리합니다. 당신도해야합니다. http://forums.asp.net/t/1240811.aspx

다른 팁

"하나의 HTTP 요청에서 여러 파일을 다운로드"에 따라 수행 할 수 있습니다. motobit.com.

그러나 HTTP가 설계된 방식이 아니며 클라이언트 및 서버 구성에 따라 언제든지 해당 단계를 수행 할 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top