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();
SampleCode

二. IsolatedstorageFile删除某个文件方法:

适用场景:清缓存/删除老的数据库。

  using (IsolatedStorageFile.GetUserStoreForApplication())
            {
                if (IsolatedStorageFile.GetUserStoreForApplication().FileExists("MyDb.sdf"))
                    IsolatedStorageFile.GetUserStoreForApplication().DeleteFile("MyDb.sdf");
            }
Method 1
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);
            }
Method 2

关于应用更新数据库的一点备注(来自群内朋友):

1.建立好数据库以后,那么数据库里面的表就确定,不会有什么变化了
2.升级时候需要判断数据库版本号,然后做删除,修改操作
3.为了省事,就直接删掉数据库(方法如上例所示),重新建。
总结:程序里面使用数据库的时候如果是判断数据库存不存在,然后进行读写操作的话,升级新版数据库结构变化只能删除数据库重新建。

posted on 2015-03-23 13:11  鸣动我心  阅读(201)  评论(0编辑  收藏  举报