我正在创建一个zip文件,并在我的项目中使用c#将其附加到电子邮件中
我正在使用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。
我做错了吗?
答案 0 :(得分:1)
您可能需要在保存命令后重置流的位置。
zip.AddEntry(FileName + ".csv", stream);
zip.Save(memoryStreamOfFile);
memoryStreamOfFile.Position = 0;