在Windows Phone 7 - > IsolatedStorageSettings类中,我们有两个函数Add()和Save().根据我的说法,两者在隔离存储中保存键值对的意义相同.我的问题是这两个函数之间的区别是什么.
为了测试这个,在Application_Deactivated事件和Application_Closing事件中的App.xaml.cs中,我在IsolatedStorageSettings中添加了一个键值对而没有调用save函数.
在Application_Launched和Application_Activated事件上,我正在检索相同的键值对,并且我获得了上面添加的键的相同值.
因此,在没有实际调用IsolatedStorageSettings的Save函数的情况下,我能够检索这些值.
.Save()实际上将隔离的存储设置实例(例如ApplicationSettings)保存到媒体(例如电话存储).
当您的应用程序受到启发(_Deactivated)或关闭(_Closed)时,会自动执行此操作.这就是为什么你甚至没有调用save就得到相同的值.
.Add()方法只是在您的设置字典中添加一个新条目.如果未保存您的设置,则可能会错过此更改(通常在应用程序意外退出时).
来自MSDN:
"当使用该类的应用程序关闭时,将保存写入IsolatedStorageSettings对象的数据.当用户关闭Web浏览器,刷新页面或浏览页面时,可能会发生这种情况.如果您希望应用程序写入隔离立即存储,您可以在应用程序代码中调用Save方法."
希望这能回答你的问题