SyncOrchestrator::Synchronize Method
Starts a synchronization session.
Assembly: Microsoft.Synchronization (in Microsoft.Synchronization.dll)
| Exception | Condition |
|---|---|
| InvalidOperationException |
—or—
|
The synchronization that this method performs will be one-way or two-way, depending on the value of Direction.
When this method is called, neither LocalProvider nor RemoteProvider can be a nullptr.
This method sets State to correspond to the value of Direction.
The following example synchronizes data between two providers and displays the synchronization statistics to the user.
' Create the synchronization orchestrator and set the providers and synchronization direction.
Dim orchestrator As New SyncOrchestrator()
orchestrator.LocalProvider = localProvider
orchestrator.RemoteProvider = remoteProvider
orchestrator.Direction = syncDir
Dim msg As String
Try
' Synchronize data between the two providers.
Dim stats As SyncOperationStatistics = orchestrator.Synchronize()
' Display statistics for the synchronization operation.
msg = ((("Synchronization succeeded!" & vbLf & vbLf & stats.DownloadChangesApplied & " download changes applied" & vbLf) & stats.DownloadChangesFailed & " download changes failed" & vbLf) & stats.UploadChangesApplied & " upload changes applied" & vbLf) & stats.UploadChangesFailed & " upload changes failed"
Catch ex As Exception
msg = "Synchronization failed! Here's why: " & vbLf & vbLf & ex.Message
End Try
MessageBox.Show(msg, "Synchronization Results")
End Sub
// Create the synchronization orchestrator and set the providers and synchronization direction.
SyncOrchestrator orchestrator = new SyncOrchestrator();
orchestrator.LocalProvider = localProvider;
orchestrator.RemoteProvider = remoteProvider;
orchestrator.Direction = syncDir;
string msg;
try
{
// Synchronize data between the two providers.
SyncOperationStatistics stats = orchestrator.Synchronize();
// Display statistics for the synchronization operation.
msg = "Synchronization succeeded!\n\n" +
stats.DownloadChangesApplied + " download changes applied\n" +
stats.DownloadChangesFailed + " download changes failed\n" +
stats.UploadChangesApplied + " upload changes applied\n" +
stats.UploadChangesFailed + " upload changes failed";
}
catch (Exception ex)
{
msg = "Synchronization failed! Here's why: \n\n" + ex.Message;
}
MessageBox.Show(msg, "Synchronization Results");
}
Show: