我正在开发一个WP8 Silverlight应用程序,该应用程序使用IsolatedStorageFile存储来获取应用程序的数据。在某些时候,我发现如果我在VS.NET中发出Rebuild Solution命令,VS会将我的项目完全部署到模拟器或连接设备而不是增量部署。在这种情况下,典型的Build输出如下所示:
2 - ;连接到仿真器8.1 WXGA 4.5英寸...
2 - ;该应用程序已安装在设备上。检查是否增量部署 有可能......
2 - ;在项目清理和重建时进行全面部署...
2 - ;卸载应用程序...
2 - ;安装应用程序......
当然,存储在IsolatedStorageFile中的所有应用程序设置和数据都会消失。
作为开发人员,我可能需要不时重建我的解决方案,或者从我的存档备份中解压缩它。但这意味着,在重建项目后,当我在Marketplace中发布我的应用程序的新版本时,我的最终用户也会丢失所有数据!
我的问题是如何在将重建的WP8 Silverlight项目部署到设备后保存设备上的所有数据?在编译时产生的文件或其中一个文件中是否有文件或设置(可能是GUID或时间戳)?哪个可以保存并添加到新的重建内容中,以防止下一个应用程序部署中的数据丢失?
答案 0 :(得分:1)
每当卸载应用程序时,都会删除IsolatedStorage数据,这正是VS在重建项目时所做的事情。最终用户更新您的应用时不会出现这种情况。该应用程序将更新而不是卸载。这样就可以保护您的数据不受IsolatedStorage的影响。
答案 1 :(得分:0)
此问题的另一种解决方案是IsoStorSpy中用户lisp建议的this thread实用程序。
使用此实用程序,我们可以将相应IsolatedStorage数据区域中的所有应用程序文件存储到PC HDD,然后在部署重建的应用程序后轻松上传它们。