只要您有可用的網絡共享,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;
這樣做是什麼定義兩個filesync提供商和協調器將在兩個方向上的文件同步。它跟蹤在提供程序中設置的目錄中創建,修改和刪除文件。
所有這一切需要在這一點上是調用同步的SyncOrchestrator:
orchestrator.Synchronize();
我試過了,但它似乎並不可能。文件提供程序使用了很多內部類,我無法代理它們。 – Timores 2012-01-16 13:15:36