MVC3 devuelve múltiples pdfs como un archivo zip

Tengo una vista que devuelve un pdf (usando iTextSharp) con varias páginas, pero ahora tengo que cambiarlo para que cada página sea un pdf separado (con su propio título) y devolver un archivo zip.

Mi código original se ve así:

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

Parece bastante simple comprimir un archivo con gzip, pero no sé cómo gzip varios archivos y devolverlo como un archivo zip. ¿O debería usar algo que no sea gzip, como dotnetzip o sharpzip?

¡Gracias por adelantado!

Respuestas a la pregunta(4)

Su respuesta a la pregunta