Silverlight隔离存储:什么标识“应用程序”?

时间:2009-05-25 00:30:35

标签: silverlight isolatedstorage

Silverlight的IsolatedStorageFile.GetUserStoreForApplication的文档只是说隔离存储是特定于“应用程序”的,并且每个不同的应用程序将拥有独立于所有其他“应用程序”的自己的存储(但是对于整个域具有一个配额) )。

这很好,但我还没有找到任何解释“应用程序”应该是什么意思的东西(无论是在Silverlight文档还是常规的.NET Framework文档中)。 Silverlight特别使用什么信息来决定“这是应用程序A”和“这是应用程序B”?它只是关闭.xap文件的URI,还是什么?

4 个答案:

答案 0 :(得分:1)

将其视为URL。如果URL不同,则应用程序的独立存储将不同。您可以在文件中更改所需的所有元数据。只是不是它的文件名/位置。如果我没记错的话,你甚至可以在同一个URL上放置一个不同的XAP,它将占用前一个的独立存储空间。

答案 1 :(得分:1)

Yups,您必须使用各种类型的隔离存储:

- >一个与xap url有关,理论上就是这样,但是在使用它时我发现了一个令人讨厌的惊喜。

- >另一个是您网站的常见内容(来自您网站的网址)。

从理论上讲,你不会遇到任何问题,但是如果你对应用程序有问题(在我的情况下,当我进行新的部署时,iso被擦除了:-(),请查看这些帖子:

http://www.tipsdotnet.com/TechBlog.aspx?PageIndex=0&BLID=13

http://silverlight.net/forums/p/86003/200941.aspx#200941

答案 2 :(得分:0)

根据用于IsolatedStorageFile类的MSDN文章,“隔离存储区域限定为特定程序集”。您的应用程序是一个程序集(您的XAP文件)。程序集具有唯一标识它的程序集清单。

答案 3 :(得分:0)

我们可以使用Isolated Storage作为虚拟文件系统,在Silverlight应用程序中将数据存储在我们机器上的隐藏文件夹中。 Silverlight应用程序为每个应用程序分配1 MB的存储空间,但我们可以增加存储量。 这是将数据存储在隔离存储中的功能

  Private Function LoadData(ByVal fileName As String) As String
        Dim data As String = String.Empty
        Dim isfstream As New IsolatedStorageFileStream(fileName, FileMode.Open, IsolateStorageFileObj)
        Dim sr As New StreamReader(isfstream)
        data = sr.ReadLine()
        Return data
  End Function