Descargar Zip creado en tiempo de ejecución



¿Qué es y Cómo funciona?

Submitamos el formulario compuesto por un solo botón y descargamos un archivo zip que contiene 3 archivos de texto.

 

Teoría

Nuestra acción de tipo HttpPost del controlador que recibe el formulario con ayuda de una referencia a System.IO.Compression genera un archivo comprimido gracias a la clase ZipArchive

Se añaden posteriormente 3 streamwriter, cada uno con cierto contenido en latín repetido 100, al archivo comprimido y se devuelve como un FileContentResult.

Tanto los 3 archivos de texto como el archivo comprimido no se guardan fisicamente.

 

Configuración y Test

Se ha utilizado Visual Studio Express 2013 para Web y actualmente Visual Comunity 2015.
La programación se ha desarrollado con C#, Razor y acceso a Base de Datos por Entity Framework.

Las tablas mostradas en la aplicación se encuentran en un Microsoft® SQL Server® 2012 y actualmente en SQL de Azure

El alojamiento de las páginas se realizó en https://www.smarterasp.net con el plan .NET ADVANCE y actualmente se han movido a 2 Aplicaciones Web en Azure: una para este proyecto Web MVC y otra para un WCF usada en un ejemplo.

Se ha testeado con exito en diferentes navegadores y sistemas operativos, en pantallas de PC, tabletas y moviles.