zip-файл пуст во вложении в электронном письме, отправленном с помощью С#

Я создаю один zip-файл и прикрепляю его к электронной почте, используя С# в своем проекте.

Я использую для этого DotNetZip.

Беллоу это код

Attachment attachment;
MemoryStream memoryStreamOfFile = new MemoryStream();
using (ZipFile zip = new ZipFile()) {
     zip.Password = "123456";
     zip.Encryption = EncryptionAlgorithm.WinZipAes256;
     zip.AddEntry(FileName + ".csv", stream);
     zip.Save(memoryStreamOfFile);
     attachment = new Attachment(memoryStreamOfFile, new ContentType("application/zip")) {Name = FileName + ".zip"};
} 

Что на самом деле я хочу сделать, так это то, что у меня есть byte[], который я конвертирую в MemoryStream и добавляю в zip как csv и прикрепляю этот zip-файл к электронной почте. Но zip-файл приходит по электронной почте пустым. Я не могу физически создать zip-файл на своем диске, мне нужно создать его только в MemoryStream.

Я делаю что-то не так?


person vaibhav shah    schedule 18.03.2015    source источник


Ответы (1)


Возможно, вам потребуется сбросить позицию потока после команды «Сохранить».

zip.AddEntry(FileName + ".csv", stream);
zip.Save(memoryStreamOfFile);
memoryStreamOfFile.Position = 0; 
person Udontknow    schedule 18.03.2015