UWP开发:应用设置存储

应用设置储存指的是保存在应用程序储存区中的键/值对的字典集合,它自动负责序列化对象,并将其保存在应用程序里。以键/值对方式提供一种快速数据访问的方式,主要用于储存一些应用信息。

 

1,简介

应用设置是Windows10 中一种经过封装好的数据储存方式,它有着自身的一些特点,并且对储存的数据也有一定的限制,在使用应用设置之前需要非常清楚这些特点和限制才能很好的使用。

1)拥有容器的层次结构

指的是这些设置信息都在一个容器中,而容器还能嵌套容器,层层嵌套。在应用设置的应用数据储存内,每个应用拥有设置的根容器,通过相关API可以向根容器添加设置数据和新容器,创建新容器可便于组织各种设置数据,相当于一个分组的功能。一个容器最多嵌套32层深。

 

2)有本地漫游两种设置类型

Windows 10 支持本地和漫游两种类型,本地是指数据只会存在于当前的客户端应用程序里面,漫游则是指数据会同步到其他设备的相同账号的客户端里。本地应用设置是在根容器ApplicationData.Current.LocalSettings下,而漫游应用设置是在根容器ApplicationData.Current.RoamingSettings下,只是存储的根目录不一样,其他API操作完全一样。

 

3)应用设置支持大多数Windows运行时的数据类型

  应用设置所存储的数据不支持所有的类型,例如集合类型,自定义对象也不支持。应用设置支持大多数Windows运行时的数据类型,如下所示:

  数值类型:UInt8、Int16、UInt16、Int32、UInt32、Int64、UInt64、Single、Double

  布尔类型:Boolean

  字符类型:Char16、String

  事件类型:DataTime、TimeSpan

  结构类型:GUID、Point、Size、Rect

  组合类型:ApplicationDataCompositeValue

  对于应用设置所不支持的类型,有两种解决办法,一是使用应用文件来存储,另一种是将数据序列化为一种受支持的数据类型,例如JSON。

 

2,应用设置操作

应用设置操作支持增、删、改、查这些基本的操作。首先要获取应用设置的容器对象ApplicationDataContainer。

ApplicationData类代表应用程序的数据类,由于一个应用程序只有一个ApplicationData对象,所以该类是使用单例模式来创建对象的,通过ApplicationData.Current属性可以获取单例对象。

 

1)添加和修改应用设置

  在进行应用设置相关操作前,需要先获取应用的设置,下面代码获取本地应用设置容器:

ApplicationDataContainer localSettings = Windows.Storage.ApplicationData.Current.LocalSettings;

  获取容器后,将数据添加到应用设置,如果该应用设置已经存在,则对其进行修改。使用ApplicationDataContainer.Values属性可以访问上一步获取的LocalSettings容器中的设置,然后通过键/值对的方式来操作应用设置。以下语句创建了一个名为 testSetting 的设置:

localSettings.Values["testSetting"] = "Hello Windoes 10";

  上面所显示的代码中,如果容器内没有"testSetting"key择新增一个,若已经存在择对原来的进行修改。

 

2)读取应用设置

  同样使用ApplicationDataContainer.Values属性来获取应用设置的值。以下代码访问 localSettings 容器中的 testSetting 设置。

String value = localSetting.Value["testSetting"].ToString();

 

3)删除应用设置

  通过ApplicationDataContainerSettings.Remove方法实现。

localSetting.Value.Remove("testSetting");

  

posted @ 2016-12-30 00:41  ldzhangyx  阅读(1142)  评论(0编辑  收藏  举报