IsolatedStorage几个问题
一.Settings.add不用save()方法.
msdn这里虽然这么写的,但是不用save也行,add之后直接就save了,经过测试(重启手机/退出程序2个方法)完全可以,不知道以后会不会改。
这篇文章的写作时间:2015/03/23
string me = "aa"; IsolatedStorageSettings iso = IsolatedStorageSettings.ApplicationSettings; if(!iso.Contains("a")) iso.Add("a",me); if(!iso.Contains("b")) iso.Add("b","bb"); // iso.Save(); iso["a"] = "A"; tb.Text = iso["a"].ToString()+iso["b"].ToString();
二. IsolatedstorageFile删除某个文件方法:
适用场景:清缓存/删除老的数据库。
using (IsolatedStorageFile.GetUserStoreForApplication()) { if (IsolatedStorageFile.GetUserStoreForApplication().FileExists("MyDb.sdf")) IsolatedStorageFile.GetUserStoreForApplication().DeleteFile("MyDb.sdf"); }
using (IsolatedStorageFile isoFile = IsolatedStorageFile.GetUserStoreForApplication()) { var fileNames = isoFile.GetFileNames("*"); if (fileNames.Length > 0 && fileNames.Contains("MyDb.sdf")) isoFile.DeleteFile("MyDb.sdf"); //check it string xname = fileNames.Aggregate("", (current, fileName) => current + (fileName + "/")); if (xname != null) MessageBox.Show(xname); }
关于应用更新数据库的一点备注(来自群内朋友):
1.建立好数据库以后,那么数据库里面的表就确定,不会有什么变化了
2.升级时候需要判断数据库版本号,然后做删除,修改操作
3.为了省事,就直接删掉数据库(方法如上例所示),重新建。
总结:程序里面使用数据库的时候如果是判断数据库存不存在,然后进行读写操作的话,升级新版数据库结构变化只能删除数据库重新建。