示例#1
0
        /// <summary>
        /// Loads its datatable from disk
        /// </summary>
        public virtual void LoadFromDisk()
        {
            List <Guid> toDeleteIDs = new List <Guid>();

            foreach (DBStorageItem item in Items.Values)
            {
                toDeleteIDs.Add(item.ID);
            }
            foreach (Guid id in toDeleteIDs)
            {
                Items.Remove(id);
            }
            DataTable.Rows.Clear();
            DataAdapter.Fill(DataTable);

            foreach (DataRow row in DataTable.Rows)
            {
                DBStorageItem newItem = (DBStorageItem)ClassTypeConstructor.Invoke(new object[] { null });
                newItem._bindedRow = row;
                newItem.Load();
                Items.Add(newItem.ID, newItem);
            }
        }
示例#2
0
 /// <summary>
 /// Deletes item from storage
 /// </summary>
 /// <param name="item">Provided item</param>
 internal void Delete(DBStorageItem item)
 {
     Items.Remove(item.ID);
     item._bindedRow.Delete();
 }