private static TblRecoveryPoint setupRecoveryPoint() { TblRecoveryPoint rec_RceoveryPoint = new TblRecoveryPoint { Name = "MHATest", Rptime = DateTime.Now }; m_db.TblRecoveryPoint.InsertOnSubmit(rec_RceoveryPoint); TblRecoveryPointLine rec_RecoveryPointLine = new TblRecoveryPointLine { Recoverypath = @"C:\Documents and Settings\mha\Application Data\SummaSummarum\4", Recoveryisfile = false }; rec_RceoveryPoint.TblRecoveryPointLine.Add(rec_RecoveryPointLine); rec_RecoveryPointLine = new TblRecoveryPointLine { Recoverypath = @"C:\Documents and Settings\mha\Dokumenter\Medlem3060\Databaser\SQLCompact\dbData3060.sdf", Recoveryisfile = true }; rec_RceoveryPoint.TblRecoveryPointLine.Add(rec_RecoveryPointLine); m_db.SubmitChanges(); return(rec_RceoveryPoint); }
static void restoreRecoveryPoint(TblRecoveryPoint rec_RestorePoint) { var RecoveryPointLines = from rp in rec_RestorePoint.TblRecoveryPointLine select rp; foreach (TblRecoveryPointLine RecoveryPointLine in RecoveryPointLines) { if (RecoveryPointLine.Recoveryisfile == true) //File restore { restorefile(RecoveryPointLine); } else //Directory restore { DirectoryInfo rdi = new DirectoryInfo(RecoveryPointLine.Restorepath); if (!rdi.Exists) { rdi.Create(); restorefile(RecoveryPointLine); } else { string movetodir = rdi.Parent.FullName + @"\" + rdi.Name + String.Format("{0:_Backup_yyyyMMddHHmmss}", DateTime.Now); rdi.MoveTo(movetodir); rdi = new DirectoryInfo(RecoveryPointLine.Restorepath); rdi.Create(); restorefile(RecoveryPointLine); rdi = new DirectoryInfo(movetodir); rdi.Delete(true); } } } }
static void Main(string[] args) { m_db = new DbRecovery3060(@"C:\Documents and Settings\mha\Dokumenter\dbRecovery3060.sdf"); //TblRceoveryPoint rec_RceoveryPoint = setupRecoveryPoint(); //createRecoveryPoint(rec_RceoveryPoint); TblRecoveryPoint rec_RestorePoint = setupRestorePoint(); restoreRecoveryPoint(rec_RestorePoint); //deleteContentNotUsed(); }
private static void createRecoveryPoint(TblRecoveryPoint rec_RceoveryPoint) { rec_RceoveryPoint.Rptime = DateTime.Now; var qry_Recoverypointlines = from l in rec_RceoveryPoint.TblRecoveryPointLine select l; foreach (TblRecoveryPointLine rpl in qry_Recoverypointlines) { if (rpl.Recoveryisfile == true) { backupfile(rpl, rpl.Recoverypath); } else { DirectoryInfo di = new DirectoryInfo(rpl.Recoverypath); foreach (var w in di.GetFiles()) { backupfile(rpl, w.FullName); } } } }
private static TblRecoveryPoint setupRestorePoint() { TblRecoveryPoint rec_RestorePoint = (from r in m_db.TblRecoveryPoint where r.Name == "MHATest" select r).First(); var RestorePointLines = from l in rec_RestorePoint.TblRecoveryPointLine select l; foreach (TblRecoveryPointLine RecoveryPointLine in RestorePointLines) { switch (RecoveryPointLine.Recoverypath) { case @"C:\Documents and Settings\mha\Application Data\SummaSummarum\4": RecoveryPointLine.Restorepath = @"C:\Documents and Settings\mha\Dokumenter\SummaSummarum\4"; break; case @"C:\Documents and Settings\mha\Dokumenter\Medlem3060\Databaser\SQLCompact\dbData3060.sdf": RecoveryPointLine.Restorepath = @"C:\Documents and Settings\mha\Dokumenter\dbData3060.sdf"; break; default: RecoveryPointLine.Restorepath = RecoveryPointLine.Recoverypath; break; } } return(rec_RestorePoint); }
partial void DeleteTblRecoveryPoint(TblRecoveryPoint instance);
partial void UpdateTblRecoveryPoint(TblRecoveryPoint instance);
partial void InsertTblRecoveryPoint(TblRecoveryPoint instance);