Microsoft文件同步 - 仅同步具有更改的文件?

时间:2013-06-24 12:24:50

标签: c# sync microsoft-sync-framework

是否可以仅使用此框架同步更改?每次添加文件以进行同步时,我都不想重新同步整个目录。我找不到这个例子吗?

2 个答案:

答案 0 :(得分:1)

同步将执行增量同步,您无需做任何特殊工作即可实现。它只会同步自上次同步以来的更改。框架附带的文档提供了有关如何进行同步的教程。

答案 1 :(得分:1)

请注意,您可以控制如何检测选择哪些文件与FileSyncOptions对象中的不同标志以及FileSyhncScopeFilter进行同步,例如

   FileSyncOptions options =
        FileSyncOptions.CompareFileStreams |  
        FileSyncOptions.ExplicitDetectChanges |
        FileSyncOptions.RecyclePreviousFileOnUpdates |
        FileSyncOptions.RecycleConflictLoserFiles;

    FileSyncScopeFilter filter = new FileSyncScopeFilter();
                    filter.FileNameExcludes.Add("*.exe");

    provider = new FileSyncProvider(replicaRootPath, filter, options);

    provider.DetectChanges();

CompareFileStreams需要额外的开销,因为它比较了文件的散列。如果未设置此标志,则仅使用文件属性。 有关详细信息,请参阅MSDN页面:

http://msdn.microsoft.com/en-us/library/microsoft.synchronization.files.filesyncoptions(v=sql.105).aspx