#28 - Isolated Storage in Silverlight 2.0
di Daniele Bochicchio, in Silverlight 2.0, 20 novembre 2008
Isolated Storage è una funzionalità ben nota a chi lavora con le WinForms, perchè permette di conservare informazioni legate all'applicazione in maniera molto semplice e con un approccio uniforme.
Nell'ottica di applicazioni Silverlight l'uso di Isolated Storage, che è sul client, consente di accedere in maniera sicura ad uno store in cui poter salvare informazioni, come anche interi file, per consentire un miglior uso delle risorse locali ed evitare continue richieste online.
A partire dalla RTM di Silverlight 2.0, lo spazio iniziale concesso ad ogni dominio è di 1 MB.
Nel caso di piccole informazioni, come uno username o una stringa, si può utilizzare la classe IsolatedStorageSetting, che espone due collezioni di nome ApplicationSettings e SiteSettings.
ApplicationsSettings è specificare per il file .xap, mentre SiteSettings per il dominio:
string username = IsolatedStorageSettings.ApplicationSettings["username"] as string; IsolatedStorageSettings.ApplicationSettings["username"] = "daniele";
Il codice necessario al salvataggio di un file all'interno dello store è peraltro molto semplice, utilizzando la normale classe StreamWriter presente anche nel .NET Framework:
using (IsolatedStorageFile store = IsolatedStorageFile.GetUserStoreForApplication()) { using (IsolatedStorageFileStream s = new IsolatedStorageFileStream("Info.xml", FileMode.Create, store)) { using (StreamWriter writer = new StreamWriter(s)) { writer.Write(xml); } } }
In caso di lettura è invece necessario utilizzare la classe StreamReader:
using (IsolatedStorageFile store = IsolatedStorageFile.GetUserStoreForApplication()) { using (IsolatedStorageFileStream s = new IsolatedStorageFileStream("Info.xml", FileMode.Open, store)) { using (StreamReader reader = new StreamReader(s)) { xml = reader.ReadAll(); } } }
E' opportuno sottolineare che è meglio non tenere all'interno di Isolated Storage informazioni di tipo sensibile, perchè questi dati sono salvati all'interno del disco del computer dell'utente e potrebbero pertanto essere manipolati.
Approfondimenti
#37 - Gestione dei dati in Data Binding in Silverlight 2.0: Converters
#24 - Animare l'ingombro di un elemento con dimensioni dinamiche
Un tocco di stile alle applicazioni Silverlight: style e template
#50 - Caricare un oggetto XAML da file remoto in Silverlight 2.0
#19 - Maschere sfumate in Silverlight con OpacityMask e ImageBrush
#49 - HyperlinkButton Template animata in Silverlight 2.0
Anteprima di Expression Blend 3.0
#40 - Animazione di un oggetto con traiettoria ellittica in Silverlight 2.0
Documentazione offline per Silverlight 2.0 RC0
ADO.NET Data Services Silverlight 2 Beta2 Client library Refresh
Lambda Expression in Windows Presentation Foundation
Accesso ai dati in Silverlight 2.0
Commenti
Se hai letto questo script, indica una preferenza sui suoi contenuti:
Per procedere devi essere autenticato.






















Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.