Es un codigo bastante simple pero que puede sacarnos de apuros.
Utiliza la libreria NPOI, que la pueden descargar de: http://dotnetzip.codeplex.com/
Espero les sea de utilidad.
private void responseZipFile(Object datos, object sender, EventArgs e)
{
using (StringWriter sw = new StringWriter())
{
using (MemoryStream ms = new MemoryStream())
{
Response.Clear();
Response.Buffer = true;
Response.ContentType = "aplication/zip";
Response.AddHeader("Content-Disposition", "attachment;filename=file.zip");
this.EnableViewState = false;
using (ZipFile zip = new ZipFile())
{
zip.AddEntry("Readme.txt", "stringContent1");
zip.AddEntry("readings/Data.csv", "stringContent2");
zip.AddEntry("readings/Index.xml", "stringContent3");
zip.Save(ms);
}
HttpContext.Current.Response.BinaryWrite(ms.ToArray());
HttpContext.Current.Response.End();
}
}
}
Saludos
2 comentarios:
Que tal, me ayudo bastante pero fijate que me sale una excepcion que dice "no se pueden evaluar la expresion porque el codigo esta optimizado o existe un marco nativo en la parte superior de la pila de llamada", pero aun asi cre el zip bien ojala pueda ayudarme que hacer para que desaparezca esa excepcion
yo estoy con el mismo problema.
Podrías ayudarme?
Publicar un comentario