Verwenden eines MemoryStreams mit FileStreamResult möglich?

Ich verwende DotNetZip, um eine Zip-Datei zu erstellen und an ein FileResult zu übergeben. Beim Debuggen kann ich überprüfen, ob der MemoryStream eine Datei enthält. Wenn ich sie jedoch über FileStreamResult ausführe, werden 0 Byte zurückgegeben:

public FileResult GetZipFiles(int documentId) {
       var file = fileRepository.Get(documentId);
       var zip = new ZipFile();
       var stream = new MemoryStream();

       var filePath = Path.Combine(UploadsFolder, Path.GetFileName(file.Id));

       zip.AddFile(filePath);
       zip.Save(stream);

       var result = new FileStreamResult(stream, "application/zip") 
                    { FileDownloadName = "hey.zip" };

       return result;
 }

Again, ich kann überprüfen, ob der Stream nicht leer ist, aber dies gibt immer die Datei @ zurüchey.zip als 0 Byte. Ich muss @ verwendMemoryStream hier falsch? OderFileStreamResult tut etwas, was ich nicht erwarte? Ich habe @ verwendFileStreamResult vorher, aber nicht mitMemoryStream.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage