2014-07-10 25 views
2

關於同一主題,有幾個關於StackOverflow的問題,但我還沒有找到解決方案。爲什麼當我重建Windows Phone 8項目時,我的IsolatedStorage會變成whiped?

在我的Windows Phone 8應用我存儲在IsolatedStorage.ApplicationSettings用戶設置。 這很好,我用IsolatedStorage.ApplicationSettings[key] = value來設置我的價值,當然使用IsolatedStorage.ApplicationSettings.Save()來保存它們。 我還創建了一個使用.sdf文件保存本地數據的數據庫。

當我使用VS2013的Deploy功能(Visual Studio的2013年)來更新我的應用程序,獨立存儲的設置將保持不變。

但是,當我使用VS2013中的RebuildClean函數時,隔離的存儲將在下一次部署時變爲空白!導致刪除所有本地數據和用戶設置。

爲什麼會出現這種情況?

解決方法是不使用這些功能,我基本上可以在不使用RebuildClean的情況下從開發到部署完成所有工作。但是,當我意外地使用這些功能時,如果不清除設備上的所有本地數據,就無法進行部署。

當我將我的應用程序上傳到Windows Phone Beta Store時,也會發生此行爲。 (我沒有使用過住的店裏還)

UPDATE:

感謝robwirving我有一些新的見解:XapDeployCmd.exe

這是一個可以執行所有部署任務即Visual Studio中正常的工具在命令提示符下爲你做。相關操作是installlaunchupdate

我認爲,當部署過程檢測項目已重建VS執行installlaunch行動。但是,如果我用update行動XapDeployCmd在XAP構建由Visual Studio,這一直CleanedRebuild,隔離的存儲不是whiped。

難道Windows Phone Beta Store會模仿這種行爲嗎?

回答

2

Visual Studio中的默認行爲是做當它檢測到重建一個全新安裝,而不是更新。據我所知這是不可配置的。

但是,您可以重建並更新您的XAP,而無需通過Visual Studio進行部署。以下是Windows Phone開發工具中包含的命令行工具XapDeployCmd的文檔,它允許您從命令行安裝或更新XAP。 http://msdn.microsoft.com/en-us/library/windowsphone/develop/ff402565%28v=vs.105%29.aspx

+0

感謝您的回覆!但是我的主要問題是當我的測試人員在重建項目時從Beta版商店下載應用程序時,孤立存儲空間被截斷。我也嘗試過使用XapDeployCmd,這讓我深入瞭解Visual Studio如何執行更新!我用這種新的見解更新了我的問題。 –

+0

這很有趣。我不希望測試版商店在發佈完整/重建版xap之後擦除存儲空間。我將自己創建一個測試應用程序,並嘗試進一步調查。 – robwirving

+0

你有沒有得到任何結果Robwirving? –

1

當您執行Clean解決方案Visual Studio的清理相關鏈接到.dlls和其他linked data到項目相關的所有數據和所有。它用作清理所有生成的文件和數據,因此最終會丟失本地數據。

Rebuild解決方案Visual Studio中的案例Regenerates文件和數據使用的是與解決方案,以便在再生您data和鏈接的過程.dlls也得到清除,併爲該項目新的解決方案創建的,因此在這裏你還損失您的數據

總之,Clean的過程清理整個解決方案的鏈接和數據,而Rebuild清理數據和鏈接後重新生成新的解決方案。

+0

這只是乾淨\重建的解釋。無法回答任何與Windows Phone上的隔離存儲有關的問題。 – robwirving

+0

感謝您的回覆。然而,正如羅布所言,這並不能回答我爲什麼孤立存儲被篡改的問題。 –

+0

正如上面提到的那樣rebuild/Clean會清除包含您的應用程序的獨立存儲存儲的所有數據 –

相關問題