我使用獨立存儲獲得了一些意外的行爲。在這種情況下,我使用它來維護墓碑的目的。使用獨立存儲在WP7上發生意外的行爲
這是一個火腿收音機許可考試練習應用程序。這是發生了什麼。當應用程序第一次運行時,用戶在MainPage上,並選擇兩個鏈接中的一個,即OptionPage1或OptionPage2(它們的工作方式相似,因此我只關注其中一個)。在OptionsPage1上,用戶從多個選項中進行選擇,然後單擊Launch按鈕進入ExamPage,用戶在這裏回答問題。完成考試後,用戶轉到ScorePage查看分數。完成此操作後,其中一個選項是單擊一個按鈕返回到MainPage。
每次用戶選擇某個操作時,隔離存儲中的文件都將使用靜態方法在獨立存儲處理類庫中進行更新。我觀察到一個非常奇怪的行爲。當用戶點擊返回到MainPage時ScorePage保存其狀態時,它將位置存儲爲「MainPage」,因爲這是用戶將在下一毫秒中的位置。但是,當MainPage讀取由ScorePage保存的獨立存儲文件時,它不具有ScorePage保存的相同內容!它有由OptionPage1保存的內容!我知道ScorePage正確保存信息,因爲我在保存後立即嘗試讀取它,並且確定。
它幾乎看起來可能有不同版本的文件被創建和更新。但這沒有意義。每個頁面使用完全相同的靜態方法來保存和更新獨立的存儲文件,並且只有一個文件夾和文件名。我很困惑。
如果不能看到代碼,將很難說出可能發生的事情。您可以發佈您的幫助器方法,並演示它們在應用的不同頁面中的使用方式。 – 2011-04-27 07:33:58
這可能是一種競爭條件嗎?你是否異步保存? – PhilChuang 2011-04-27 14:50:49