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

C# Microsoft文件同步-仅同步有更改的文件?,c#,sync,microsoft-sync-framework,C#,Sync,Microsoft Sync Framework,是否可以仅使用此框架同步更改?我不想每次添加要同步的文件时都重新同步整个目录。我找不到任何这样的例子?同步将进行增量同步,您不需要做什么特殊的事情来让它工作。它将只同步自上次同步以来所做的更改。框架附带的文档提供了有关如何进行同步的教程。请注意,您可以控制如何使用FileSyncOptions对象以及FileyHncScopeFilter中的不同标志来检测选择哪些文件进行同步,例如 FileSyncOptions options = FileSyncOptions.Comp

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

同步将进行增量同步,您不需要做什么特殊的事情来让它工作。它将只同步自上次同步以来所做的更改。框架附带的文档提供了有关如何进行同步的教程。

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

   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页面:

   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();

   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();