当用户更新我的应用程序时,是否会删除本地存储?

时间:2012-11-12 06:40:17

标签: c# windows-8 microsoft-metro local-storage

我在Windows 8 appstore中有一个Windows 8应用程序(数字床头柜)。该应用程序将用户首选项存储在用户计算机上的XML文件中,也称为本地存储。我想知道的是,如果我发布了我的应用程序的更新并且用户进行了更新,那么现有的存储设置是否会被清除?

3 个答案:

答案 0 :(得分:7)

答案是否定的!

用户更新应用时不要担心,本地和漫游文件夹/设置不会被删除。

答案 1 :(得分:5)

数据不会被删除。但是,如果您发布了更新,并且如果您更改了数据存储的版本,那么您需要有一种机制将数据从版本0复制到版本1.

您可以选择为应用程序版本化应用程序数据。这将使您能够创建应用程序的未来版本,从而更改其应用程序数据的格式,而不会导致与以前版本的应用程序的兼容性问题。应用程序检查数据存储中的应用程序数据的版本,如果版本低于应用程序所期望的版本,则应用程序应将应用程序数据更新为新格式并更新版本。有关详细信息,请参阅Application.Version属性和ApplicationData.SetVersionAsync方法。

应用程序数据样本http://code.msdn.microsoft.com/windowsapps/ApplicationData-sample-fb043eb2包含对您有帮助的版本代码。

<强>版本: 应用程序数据可以利用app数据的版本控制从一种数据结构升级到另一种数据结构。版本号与应用程序版本不同,可以随意设置。尽管未强制执行,但强烈建议仅使用不断增加的版本号,因为在转换为表示较新数据的较低数据版本号时,可能会发生意外情况,包括数据丢失。请注意,应用程序数据仅在具有相同版本号的应用程序之间漫游。例如,版本2上的设备将在彼此之间转换数据,而版本3上的设备将执行相同的操作,但版本2和版本3设备之间没有自动转换。这是版本号更新时应用程序的责任。安装以前在其他设备上使用各种版本号的新应用程序将从可用的最高版本号应用程序数据开始

答案 2 :(得分:3)

更新后数据仍然存在。我知道当你在visual studio中更改清单文件时会发生这种情况,但是当应用程序通过市场更新时却不会发生。