MVC3 zwraca wiele plików PDF jako plik zip

Mam widok, który zwraca plik pdf (używając iTextSharp) z wieloma stronami, ale teraz muszę go zmienić, aby każda strona była osobnym plikiem PDF (z własnym unikalnym tytułem) i zwracała plik zip.

Mój oryginalny kod wygląda tak:

public FileStreamResult DownloadPDF()
{
    MemoryStream workStream = new MemoryStream();
    Document document = new Document();
    PdfWriter.GetInstance(document, workStream).CloseStream = false;
    document.Open();

    // Populate pdf items

    document.Close();

    byte[] byteInfo = workStream.ToArray();
    workStream.Write(byteInfo, 0, byteInfo.Length);
    workStream.Position = 0;

    FileStreamResult fileResult = new FileStreamResult(workStream, "application/pdf");
    fileResult.FileDownloadName = "fileName";

    return fileResult;
}

Kompresowanie pliku za pomocą gzip wygląda całkiem prosto, ale nie wiem, jak rozpakować wiele plików i zwrócić go jako jeden plik zip. Czy powinienem użyć czegoś innego niż gzip, jak dotnetzip lub sharpzip?

Z góry dziękuję!

questionAnswers(4)

yourAnswerToTheQuestion