diff options
| author | Roy Ben-Shabat <Roy@Twine-s.com> | 2019-10-30 14:05:30 +0200 |
|---|---|---|
| committer | Roy Ben-Shabat <Roy@Twine-s.com> | 2019-10-30 14:05:30 +0200 |
| commit | 27671ba7c2a09b201a9fe92b11bad482ab93f93f (patch) | |
| tree | fa70936d29adc9ecf0bdf6a7637c7d390d95a901 /Software/Visual_Studio/Tango.Core | |
| parent | 50a9c8b799fd444d773d852542ec2a920e152b2c (diff) | |
| download | Tango-27671ba7c2a09b201a9fe92b11bad482ab93f93f.tar.gz Tango-27671ba7c2a09b201a9fe92b11bad482ab93f93f.zip | |
Implemented PPC rollback procedures.
Diffstat (limited to 'Software/Visual_Studio/Tango.Core')
| -rw-r--r-- | Software/Visual_Studio/Tango.Core/DB/DbManager.cs | 18 | ||||
| -rw-r--r-- | Software/Visual_Studio/Tango.Core/IO/TemporaryManager.cs | 11 |
2 files changed, 29 insertions, 0 deletions
diff --git a/Software/Visual_Studio/Tango.Core/DB/DbManager.cs b/Software/Visual_Studio/Tango.Core/DB/DbManager.cs index 10a4e26db..1d415fdb1 100644 --- a/Software/Visual_Studio/Tango.Core/DB/DbManager.cs +++ b/Software/Visual_Studio/Tango.Core/DB/DbManager.cs @@ -142,6 +142,24 @@ namespace Tango.Core.DB File.Delete(backupPath); } + public void Backup(String name, String file) + { + String command = $"BACKUP DATABASE {name} TO DISK = '{file}'"; + SqlCommand cmd = new SqlCommand(command, _connection); + cmd.ExecuteNonQuery(); + } + + public void Restore(String name, String file) + { + SetOffline(name); + + String command = $"RESTORE DATABASE {name} FROM DISK = '{file}'"; + SqlCommand cmd = new SqlCommand(command, _connection); + cmd.ExecuteNonQuery(); + + SetOnline(name); + } + public void ClearDb() { if (!_connection.ConnectionString.ToLower().Contains("initial catalog")) diff --git a/Software/Visual_Studio/Tango.Core/IO/TemporaryManager.cs b/Software/Visual_Studio/Tango.Core/IO/TemporaryManager.cs index 3a02325e6..25ace7dc1 100644 --- a/Software/Visual_Studio/Tango.Core/IO/TemporaryManager.cs +++ b/Software/Visual_Studio/Tango.Core/IO/TemporaryManager.cs @@ -124,6 +124,17 @@ namespace Tango.Core.IO } /// <summary> + /// Creates a new temporary file but does not create it. + /// </summary> + /// <returns></returns> + public virtual TemporaryFile CreateImaginaryFile(String extension = null) + { + TemporaryFile file = new TemporaryFile(Path.Combine(RootPath, Path.GetRandomFileName() + extension), false); + AddItem(file); + return file; + } + + /// <summary> /// Deletes all items. /// </summary> public virtual void Clean() |
