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.