Per la compressione di file ZIP in .NET, ho sempre utilizzato la famosa libreria SharpZipLib. In questi giorni, però, sono venuto a conoscenza di DotNetZip, di cui è stata recentemente rilasciata la versione 1.5. Si tratta di un progetto open-source pubblicato su CodePlex e rilasciato con licenza Microsoft Public License.
Tra le funzionalità offerte, c'è anche la possibilità di creare archivi auto-estraenti e file ZIP che possono essere direttamente inviati all'oggetto Response.OutputStream, cosa che permette di generare dinamicamente archivi compressi scaricabili via Internet.
Oggi ho provato a convertire un sito fatto in .NET 2.0 alla nuova versione 3.5. L'applicazione web in questione fa di uso di AJAX. La procedura di aggiornamento automatico apparentemente è andata a buon fine, tuttavia alla prima prova di compilazione ho ottenuto un messaggio di errore secondo cui non è possibile caricare l'assembly System.Web.Extensions versione 1.0.61025.0.
Dopo una ricerca su Internet, ho trovato un post che spiega la causa del problema e come si deve intervenire per risolverlo... In pratica, basta cambiare un parametro nel web.config specificando il numero di versione corretto per la libreria.