private void SetupStorage()
        {
            this.Storage = GetStorage(this.GetType());

            if (this.Storage == null)
            {
                Type thisRealType = this.GetType();
                this.Storage = InitStorage(thisRealType);
            }
        }
 private static DBStorage GetStorage(Type classType)
 {
     return(DBStorage.GetStorage(classType));
 }
 /// <summary>
 /// Deletes itself from corresponding datatable
 /// Override this method in derived class to perform specific deletion logic
 /// </summary>
 public virtual void Delete()
 {
     Storage.Delete(this);
     this.Storage    = null;
     this._bindedRow = null;
 }