Crear archivo zip desde el byte []

Estoy intentando crear un archivo Zip en .NET 4.5 (System.IO.Compression) a partir de una serie de matrices de bytes. Como ejemplo, de una API que estoy usando termino con unList<Attachment> y cadaAttachment tiene una propiedad llamadaBody el cual es unbyte[]. ¿Cómo puedo iterar sobre esa lista y crear un archivo zip que contenga cada adjunto?

Ahora mismo tengo la impresión de que tendría que escribir cada archivo adjunto en el disco y crear el archivo zip a partir de eso.

//This is great if I had the files on disk
ZipFile.CreateFromDirectory(startPath, zipPath);
//How can I create it from a series of byte arrays?

Respuestas a la pregunta(3)

Su respuesta a la pregunta