Начнем с того, что я не верю, что видел какие-либо пространства имен или классы в .NET Framework, специально предназначенные для операций резервного копирования / архивирования / восстановления.Если кто-нибудь знает что-либо, ну, пожалуйста, сообщите нам, пожалуйста!
Самое простое, резервное копирование файлов - это просто копирование файлов из одного места в другое.Допустим, у вас есть исходный код, для которого вы хотите сохранить резервную копию, и он меняется день ото дня.Вы можете создать небольшое консольное приложение, которое будет просто копировать все файлы в целевых папках на внешний диск, перезаписывать любые файлы, которые изменились с момента последней операции копирования, и добавлять любые новые файлы и папки в место назначения.Затем используйте запланированное задание, чтобы запускать утилиту один раз в день, когда компьютер не используется иным образом - или, по крайней мере, когда источник не редактируется.
Существует множество методов и классов впространство имен System.IO, которое сделает это относительно простым.
Некоторые полезные классы в пространстве имен IO:
- Каталог предоставляет статические методы для создания, перемещения и перечисления через каталогии подкаталоги
- DirectoryInfo - это класс, представляющий свойства папок / каталогов
- Файл предоставляет статические методы для файлов
- FileInfo - это класс, представляющий свойства файлов.
Вот пример кода, который даст вам массив всех папок верхнего уровня прямо под корнем диска C:
string[] d = Directory.GetDirectories(@"C\", "*.*", SearchOption.TopDirectoryOnly);
DirectoryInfo[] di = new DirectoryInfo[d.Length];
for (int x = 0; x < d.Length; x++)
{
di[x] = new DirectoryInfo(d[x]);
}