gpt4 book ai didi

wcf - 使用Microsoft Sync Framework在整个网络上同步文件

转载 作者:行者123 更新时间:2023-12-04 04:36:02 25 4
gpt4 key购买 nike

此处给出的文件同步示例-http://code.msdn.microsoft.com/Release/ProjectReleases.aspx?ProjectName=sync&ReleaseId=3424仅讨论在同一台计算机上同步文件。有谁遇到过使用WCF之类的东西使之能够在网络上用于文件的工作示例?

科比的示例-http://bryantlikes.com/archive/2008/01/03/remote-file-sync-using-wcf-and-msf.aspx不完整,仅是一种单向同步,并不理想。

最佳答案

只要您有可用的网络共享,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;

这样做是定义两个文件同步提供程序,并且协调器将在两个方向上同步文件。它跟踪在提供程序中设置的目录中文件的创建,修改和删除。

此时所需要做的就是在SyncOrchestrator上调用Synchronize:
    orchestrator.Synchronize();

关于wcf - 使用Microsoft Sync Framework在整个网络上同步文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4824823/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com