La maggior parte delle applicazioni Windows Phone dispone di una sezione dove permettere all'utente di configurare l'applicazione, cambiare comportamenti. Spesso, l'applicazione stessa necessita di memorizzare informazione di sessione.
Il modo più rapido per raggiungere questo obbiettivo è di sfruttare la classe IsolatedStorageSettings che, con un pattern su proprietà, può semplificare notevolmente il salvataggio di tutte queste informazioni. La classe è, di fatto, un dizionario, che permette di memorizzare, in base ad una chiave di tipo stringa, qualsiasi oggetto primitivo, come stringhe, interi, date e booleani, oppure tipi complessi, a patto che siano serializzabili con il DataContractSerializer.
Nello snippet seguente si propone la definizione di una proprietà per esporre un'impostazione e per poterla mettere in binding o farne accesso facilmente.
private const string myKey = "mykey"; public static string MyKey { get { string v; if (IsolatedStorageSettings.ApplicationSettings.TryGetValue(myKey, out v)) return v; return null; } set { IsolatedStorageSettings.ApplicationSettings[myKey] = value; } }
Grazie al metodo TryGetValue, si gestisce il valore di default, in modo da non incorrere in errori quando l'utente avvia per la prima volta l'applicazione o quando questa è stata aggiornata. Non è necessario fare nessun'altra operazione, perché il dizionario viene salvato e caricato automaticamente dal sistema allo startup e alla chiusura. Se si vuole essere sicuri di persistere i dati in un preciso momento è necessario richiamare IsolatedStorageSettings.ApplicationSettings.Save().
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Rendere i propri workflow e le GitHub Action utilizzate più sicure
Utilizzare il metodo ExceptBy per eseguire operazione di sottrazione tra liste
Managed deployment strategy in Azure DevOps
Utilizzare gRPC su App Service di Azure
Supportare lo HierarchyID di Sql Server in Entity Framework 8
Gestire gli accessi con Token su Azure Container Registry
Recuperare l'ultima versione di una release di GitHub
Generare HTML a runtime a partire da un componente Razor in ASP.NET Core
Recuperare App Service cancellati su Azure
Rinnovare il token di una GitHub App durante l'esecuzione di un workflow
Garantire la provenienza e l'integrità degli artefatti prodotti su GitHub
Il nuovo controllo Range di Blazor 9