Exemple #1
0
        public DataBase(string folder, string dbname)
        {
            dbName   = dbname;
            dbFolder = folder;

            if (!Directory.Exists(folder))
            {
                Directory.CreateDirectory(folder);
            }

            Stream dbStream = null;

            try
            {
                dbStream = File.Open(Path.Combine(dbFolder, dbName), FileMode.Open);
                BinaryFormatter bFormatter = new BinaryFormatter();
                dataBase = (Dictionary <string, Entity>)bFormatter.Deserialize(dbStream);
            }
            catch (FileNotFoundException)
            {
                if (dbStream != null)
                {
                    dbStream.Close();
                }
                dbStream = File.Open(Path.Combine(dbFolder, dbName), FileMode.Create);
                dataBase = new Dictionary <string, Entity>();
            }
            catch (SerializationException)
            {
                if (dbStream != null)
                {
                    dbStream.Close();
                }
                dbStream = File.Open(Path.Combine(dbFolder, dbName), FileMode.Create);
                dataBase = new Dictionary <string, Entity>();
            }
            finally
            {
                if (dbStream != null)
                {
                    dbStream.Close();
                }
            }
            WriteDataBaseDelegate += new WriteDataBaseDelegate(FlushDataBase);
        }
Exemple #2
0
        public DataBase(string folder, string dbname)
        {
            dbName = dbname;
            dbFolder = folder;

            if (!Directory.Exists(folder))
            {
                Directory.CreateDirectory(folder);
            }

            Stream dbStream = null;
            try
            {
                dbStream = File.Open(Path.Combine(dbFolder, dbName), FileMode.Open);
                BinaryFormatter bFormatter = new BinaryFormatter();
                dataBase = (Dictionary<string, Entity>)bFormatter.Deserialize(dbStream);
            }
            catch (FileNotFoundException)
            {
                if (dbStream != null)
                    dbStream.Close();
                dbStream = File.Open(Path.Combine(dbFolder, dbName), FileMode.Create);
                dataBase = new Dictionary<string, Entity>();
            }
            catch (SerializationException)
            {
                if (dbStream != null)
                    dbStream.Close();
                dbStream = File.Open(Path.Combine(dbFolder, dbName), FileMode.Create);
                dataBase = new Dictionary<string, Entity>();
            }
            finally
            {
                if (dbStream != null)
                    dbStream.Close();
            }
            WriteDataBaseDelegate += new WriteDataBaseDelegate(FlushDataBase);
        }