//************************************************
//************************************************
public static bool BackUpDataBase_Return_1Successful_0Error() {
try {
var a = new FolderBrowserDialog();
if (a.ShowDialog() == System.Windows.Forms.DialogResult.OK) {
using (var db = new Accounting5Entities()) {
e0.ESetConnectionString(db);
string Path = a.SelectedPath + @"BackUpRayanHesab_" + EGetCurrentDateShamsi_Return_String() + "_" + DateTime.Now.Hour.ToString() + "-" + DateTime.Now.Minute.ToString() + "-" + DateTime.Now.Second.ToString() + "_";
for (Int32 i = 1; i <= Int32.MaxValue; i++) {
if (System.IO.File.Exists(Path + i.ToString() + ".bak") == false) {
Path = Path + i.ToString() + ".bak";
db.Database.ExecuteSqlCommand(System.Data.Entity.TransactionalBehavior.DoNotEnsureTransaction,@"BACKUP DATABASE Accounting5 TO DISK = '" + Path + "'");
break;
}
}
}
e0.MessageBox_Showinfo(".پشتیبان گیری با موفقیت انجام شد");
} else {
return false;
}
a.Dispose();
} catch (Exception ex) {
e0.MessageBox_Showinfo(ex.Message);
return false;
}
return true;
}
//************************************************
//************************************************
public static bool RestoreDataBase_Return_1Successful_0Error() {
try {
var fake = System.Windows.MessageBox.Show("قبل از بازگردانی ، نخست از بانک اطلاعات نسخه پشتیبان تهیه می گردد","!");
if (BackUpDataBase_Return_1Successful_0Error() == false) {
e0.MessageBox_Showinfo(".عملیات تهیه نسخه پشتیبان و بازگرانی با اشکال مواجه شد/لطفا مجدداً تلاش کنید");
return false;
}
var a = new OpenFileDialog();
a.Filter = "Backup file (*.bak)|*.bak";
a.Multiselect = false;
a.Title = "لطفا فایل بانک اطلاعات مورد نظر را انتخاب نمایید";
if (a.ShowDialog() == System.Windows.Forms.DialogResult.OK) {
string ConnectionString = e0.EdbConnectionString;
ConnectionString = ConnectionString.Replace("Accounting5","master");
var E0DbContext = new System.Data.Entity.DbContext(ConnectionString);
try {//اگر دیتابیس حذف شده است
E0DbContext.Database.ExecuteSqlCommand(System.Data.Entity.TransactionalBehavior.DoNotEnsureTransaction,@"RESTORE DATABASE Accounting5 FROM DISK = '" + a.FileName + "' WITH REPLACE");
} catch {//اگر دیتابیس از قبل وجود دارد و در حال کار است
E0DbContext.Database.ExecuteSqlCommand(System.Data.Entity.TransactionalBehavior.DoNotEnsureTransaction,"ALTER DATABASE Accounting5 SET SINGLE_USER WITH ROLLBACK IMMEDIATE" + "n" + @"RESTORE DATABASE Accounting5 FROM DISK = '" + a.FileName + "' WITH REPLACE");
}
e0.MessageBox_Showinfo(".بازگردانی با موفقیت انجام شد");
E0DbContext.Dispose();
} else {
return false;
}
a.Dispose();
} catch (Exception ex) {
e0.MessageBox_Showinfo(ex.Message);
return false;
}
return true;
}
}
ستاره الکترونیک tostring ,datetime ,tostring datetime منبع
درباره این سایت