Around and About .NET World

Il blog di Marco Minerva
posts - 1671, comments - 2232, trackbacks - 2135

My Links

News

Contattami su Live Messenger:


MCTS: Windows, Web, Distributed Applications & SQL Server

MCPD: Enterprise Applications

Tag Cloud

Archives

Post Categories

Links

martedì 18 novembre 2008

Le meraviglie dello StringBuilder

Le stringhe in .NET sono oggetti immutabili, quindi se si devono concatenare insieme un numero elevato si stringhe, usare l'operatore + è inefficiente, perché ogni volta verrebbe creata in memoria una nuova stringa. Per ovviare al problema, si deve utilizzare l'oggetto StringBuilder che, come si legge su MSDN, rappresenta una sequenza mutabile di caratteri, quindi ad esso è possibile aggiungere, rimuovere, inserire o sostituire caratteri senza la necessità di istanziare un nuovo oggetto in memoria.

Questa è la favoletta che tutti noi conosciamo... Però quando oggi, facendo debug di codice scritto da altri, ho sostituito tutte le concatenazioni di stringhe con uno StringBuilder ed ho osservato che il tempo di esecuzione è passato da 2 minuti a 3 secondi scarsi, mi si sono illuminati gli occhi Tongue out

posted @ lunedì 1 gennaio 0001 00:00 | Feedback (5) | Filed Under [ C# VB .NET ASP .NET .NET 3.0 Orcas & .NET 3.5 ]

Determinare gli aggiornamenti di una pagina web

Come tutti sappiamo, utilizzando la proprietà IsPostBack è possibile determinare se una pagina ASP .NET è stata caricata per la prima volta oppure in seguito ad un PostBack (causato, tipicamente, dalla pressione di un pulsante). Ma se si ha la necessità di sapere quando una pagina è ricaricata con il tasto Aggiorna del browser? In questo caso non esiste una proprietà "pronta all'uso", ma cercando sulla rete si possono trovare diverse soluzioni, le più efficienti delle quali si basano sull'utilizzo di un opportuno HttpModule. A questo indirizzo è disponibile una esauriente descrizione del problema, accompagnata da un file ZIP che contiene il modulo HTTP già compilato.

Technorati Tags: , ,

posted @ lunedì 1 gennaio 0001 00:00 | Feedback (0) | Filed Under [ ASP .NET ]

Powered by:
Powered By Subtext Powered By ASP.NET