/// <summary> /// 加载数据 /// </summary> internal void LoadData() { IsDataReady = false; IsNotSuccessLoadData = false; IsNotFoundDatabase = false; try { Config.GetConfig().GetConfigs(); LoadSqlConn(); bool IsDBKeyChange = false; bool IsUIDChange = false; if (string.IsNullOrWhiteSpace(Resources.GetRes().DB_KEY)) { Resources.GetRes().DB_KEY = "".GenereteRandomCode(32, 2); IsDBKeyChange = true; } if (string.IsNullOrWhiteSpace(Resources.GetRes().UID)) { Resources.GetRes().UID = "".GenereteRandomCode(32, 1); IsUIDChange = true; } if (IsDBKeyChange || IsUIDChange) { Config.GetConfig().SetConfig(Config.GetConfig().ReadConfig().GetLines().ToList()); } //检查数据库文件是否存在 if (!File.Exists(CONS_PATH)) { IsNotFoundDatabase = true; DbOperator dbOperator = new DbOperator(); string adminPassword = "******"; adminPassword = Key.GetKeys().Encryption(adminPassword); dbOperator.CreateNewDB(CONS_PATH, Resources.GetRes().DB_KEY, adminPassword); IsNotFoundDatabase = false; ExceptionPro.ExpInfoLog("Successflully created a new database!"); } InitialConn(Resources.GetRes().DB_KEY); #if !DEBUG //检查数据库文件密码是否为空 bool IsInvalidDB = false; try { using (System.Data.SQLite.SQLiteConnection _con = new System.Data.SQLite.SQLiteConnection("Data Source=" + CONS_PATH + ";Password=;")) { _con.Open(); DataTable tables = _con.GetSchema("Tables"); IsInvalidDB = true; } } catch { IsInvalidDB = false; } if (IsInvalidDB) { IsNotFoundDatabase = true; throw new OybabException("Invalid database!"); } #endif //备份 Backup.Instance.BackupFile(); //加载缓存 LoadCache(); } catch (Exception ex) { ExceptionPro.ExpLog(ex, null, false, "Exception_DatabaseLoadFailed"); } }