mit Silverlight Daten lokal am Client speichern

erstmalig ist es bei Webanwendungen möglich Daten lokal pro Benutzer zu speichern. Naja ganz richtig ist das nicht, Cookies gabs auch schon. Aber ist bei Cookies das Limit 2 KB so hat man bei Silverlight theoretisch unbegrenzt Platz zur Verfügung. Das Limit wird pro Domain festgelegt. Der Stroage selber bezieht sich immer auf die Anwendung (XAP) und pro Benutzer. Interessant ist, das der Storage darüber hinaus auch Browser unabhängig ist. Das heist eine Website die mit Mozilla geöffnet wird und Daten speichert, hat die selben Daten auch mit IE wieder zur Verfügung, solange man an der gleichen Maschine sitzt.

Wie folgt ein minimal Beispiel für den Einsatz der Isolated Storage Silverlight Technologie. Ein Code sagt mehr als 1000 Bilder ;-)

Imports System.IO.IsolatedStorage
Partial Public Class Page
    Inherits UserControl
    Private appSettings As IsolatedStorageSettings = 
IsolatedStorageSettings.ApplicationSettings
    Public Sub New()
        InitializeComponent()
    End Sub
    Private Sub onClick(ByVal sender As System.Object, 
ByVal e As System.Windows.RoutedEventArgs)
        appSettings("Text1") = Text1.Text
    End Sub

Private Sub Page_Loaded(ByVal sender As Object, ByVal e

As System.Windows.RoutedEventArgs) Handles Me.Loaded

        Try
            Text1.Text = appSettings("Text1").ToString
        Catch ex As Exception
 
        End Try
    End Sub
End Class

Übrigens liefert ein Zugriff auf einen falschen Schlüssel in der Storage Collection immer eine KeynotFoundException so das man diese zwingend mit try catch behandeln muss.

Kommentar schreiben