public ActionResult CreateArchivePackage(GetObjectResponse response)
{
using (var memoryStream = new MemoryStream())
{
response?.ResponseStream.CopyTo(memoryStream);
using (System.IO.Compression.ZipArchive zip = new System.IO.Compression.ZipArchive(memoryStream, System.IO.Compression.ZipArchiveMode.Create, true))
{
ZipArchiveEntry zipItem = zip.CreateEntry("Asmosis" + ".xml");
using (MemoryStream originalFileMemoryStream = new MemoryStream(Encoding.Default.GetBytes(CreateXMLDocForNow().OuterXml)))
{
using (System.IO.Stream entryStream = zipItem.Open())
{
originalFileMemoryStream.CopyTo(entryStream);
return File(originalFileMemoryStream.ToArray(), "random/zip");
}
}
}
}
}
Я пробовал несколько разных подходов, таких как преобразование файла xml в поток и последующее добавление его в текущий поток памяти без удачи! Буду признателен за любую помощь, я впервые работаю с потоками, файлами и т. Д. c.