Среда Sync может синхронизировать файлы по сети, если у вас есть доступный общий сетевой ресурс.
В конструкторе FileSyncProvider установите rootDirectoryPath для общего сетевого ресурса, для которого у вас есть права на чтение и запись:
string networkPath = @"\\machinename\sharedfolderlocation";
FileSyncProvidor provider = new FileSyncProvider(networkPath);
Чтобы выполнить двустороннюю синхронизацию таким образом, вам потребуется создать FileSyncProvider для исходной и целевой систем и использовать SyncOrchestrator, чтобы выполнить тяжелую работу за вас.
Пример:
string firstLocation = @"\\sourcemachine\sourceshare";
string secondLocation = @"\\sourcemachine2\sourceshare2";
FileSyncProvidor firstProvider = new FileSyncProvider(firstLocation);
FileSyncProvidor secondProvider = new FileSyncProvider(secondLocation);
SyncOrchestrator orchestrator = new SyncOrchestrator();
orchestrator.LocalProvider = firstProvider;
orchestrator.RemoteProvider = secondProvider;
orchestrator.Direction = SyncDirectionOrder.DownloadAndUpload;
Это определяет двух провайдеров синхронизации файлов, и оркестратор будет синхронизировать файлы в обоих направлениях. Он отслеживает создание, изменение и удаление файлов в каталогах, установленных в поставщиках.
Все, что нужно на этом этапе, - это вызвать Synchronize на SyncOrchestrator:
orchestrator.Synchronize();