2009-07-17 133 views
6

獨立存儲的持久性如何?Silverlight是否將它視爲緩存,在需要更多空間時刪除項目,還是僅在用戶或應用程序請求時才刪除項目?Silverlight獨立存儲被視爲永久存儲或緩存嗎?

似乎還有各種各樣的手段來識別孤立存儲 - 機器,應用程序,領域....我遇到的麻煩是這些都與用戶有關。它是可能,如果是如何創建和以後檢索具有以下屬性的獨立存儲文件:

  • 在同一個文件中,無論哪個Windows用戶在
  • 同樣記錄文件被使用,無論程序集版本(更新到XAP)。相反,網址將保持不變。這將不得不離線工作(瀏覽器之外)。

基本上我想獨立存儲跨應用程序更新仍然存在,並且在不同的用戶登錄。

回答

2

的 「MachineStore」 選項在Silverlight中可用,只有「應用程序」和「網站」。兩者都由用戶作用域,因爲這些文件存儲在Windows用戶的AppData下。應用程序在瀏覽器和瀏覽器外共享相同的隔離存儲器商店。

[edit ...我第一次錯過了部分問題]:獨立存儲器不是瀏覽器緩存的一部分,因此在清除瀏覽器緩存時它們不會被清除。作爲開發人員,您可以通過編程方式刪除東西。作爲用戶,您可以使用Silverlight配置UI(即右鍵單擊菜單)來管理商店 - 它被稱爲「應用程序存儲」給用戶。最後,一個強悍的用戶可以在磁盤上找到文件並手動刪除它們......它們是隱藏的,所以它們不會顯示在正常的搜索中,但確定的用戶仍然可以找到它們。

+0

無論哪種方式,應用程序商店似乎從不「自動」刪除。用戶或應用程序必須採取有意的行動,這正是我所尋找的。 – David 2009-07-28 17:01:08

3

這是相當持久的。用戶可以刪除它,如果他們真的想要,但他們將不得不這樣做。

這是Isolated Storage的MSDN文檔。

IsolatedStorageFile在Silverlight中你選擇的情侶,讓靜態的要範圍存儲:

  • GetUserStoreForApplication
  • GetUserStoreForSite