Kompresuj plik za pomocą dotnetzip, a po otwarciu jest uszkodzony

Tworzę plik zip w kontrolerze z tablicy bajtów i zwracam plik zip jako wynik pliku. Po pobraniu pliku zip i wyodrębnieniu pliku jest on uszkodzony. Robię to w ten sposób:

byte[] fileBytes =array
MemoryStream fileStream = new MemoryStream(fileBytes);
MemoryStream outputStream = new MemoryStream();
fileStream.Seek(0, SeekOrigin.Begin);

using (ZipFile zipFile = new ZipFile())
{
    zipFile.AddEntry(returnFileName, fileStream);
    zipFile.Save(outputStream);
}

outputStream.Position = 0;

FileStreamResult fileResult = new FileStreamResult(outputStream, System.Net.Mime.MediaTypeNames.Application.Zip);
fileResult.FileDownloadName = returnFileName + ".zip";

return fileResult;

questionAnswers(2)

yourAnswerToTheQuestion