为了避免创建双 SQLite DB,如何检测是否已经有一个?
1) 下面的代码是在 App.xaml.cs 中创建 SQLite DB
2) App.xaml.cs 中的这段代码是创建 SQLite 数据库还是只创建表或两者?
3) 在 MainPage 中,如果创建了 SQLite DB,如何再检查一次。
问题:没有错误信息并且 MainPage 没有显示。
感谢您的帮助。谢谢
-- 在下面检查 App.xaml.cs 中的 rootFrame if (rootFrame == null) { //-- 创建前检测 布尔结果 = 等待 GetIfFileExistsAsync(DBPath); 如果(结果 == 真) { MessageDialog mError = new MessageDialog("DB Created", "DB 创建状态"); 等待 mError.ShowAsync(); 返回; } 别的 { MessageDialog mError = new MessageDialog("未创建数据库", "未创建数据库"); 等待 mError.ShowAsync(); 创建DBNow(); } //---- 根帧 } 私有异步任务 GetIfFileExistsAsync(string strDBPath) { 尝试 { var dbFile = 等待 Windows.Storage.ApplicationData.Current.LocalFolder.GetFileAsync(strDBPath); 如果(dbFile!= null) { 返回真; } 别的 { 返回假; } } 捕获(FileNotFoundException) { 返回假; } } 私有异步无效 CreateDBNow() { DBPath = Path.Combine(Windows.Storage.ApplicationData.Current.LocalFolder.Path, "customers.sqlite"); 使用 (var db = new SQLite.SQLiteConnection(DBPath)) { // 如果表不存在则创建表 db.CreateTable(); } MessageDialog mError = new MessageDialog("DB now created", "DB created"); 等待 mError.ShowAsync(); } --- 在主页中
如果创建了 SQLite DB,我需要再检查一次。