public SampleSyncAgent(string localProviderConnString, string remoteProviderConnString) { //Instantiate the sample provider that allows us to create a provider //for both of the peers that are being synchronized. SampleSyncProvider sampleSyncProvider = new SampleSyncProvider(); //Instantiate a DbSyncProvider for the local peer and the remote peer. //For example, if this code is running at peer1 and is //synchronizing with peer2, peer1 would be the local provider //and peer2 the remote provider. //<snippetOCSv2_CS_Basic_Peer_DbSyncProvider> DbSyncProvider localProvider = new DbSyncProvider(); DbSyncProvider remoteProvider = new DbSyncProvider(); //Create a provider by using the SetupSyncProvider on the sample class. sampleSyncProvider.SetupSyncProvider(localProviderConnString, localProvider); localProvider.SyncProviderPosition = SyncProviderPosition.Local; sampleSyncProvider.SetupSyncProvider(remoteProviderConnString, remoteProvider); remoteProvider.SyncProviderPosition = SyncProviderPosition.Remote; //</snippetOCSv2_CS_Basic_Peer_DbSyncProvider> //Specify the local and remote providers that should be synchronized, //and the direction and order of changes. In this case, changes are first //uploaded from remote to local and then downloaded in the other direction. this.LocalProvider = localProvider; this.RemoteProvider = remoteProvider; this.Direction = SyncDirectionOrder.UploadAndDownload; }
public SampleSyncAgent(string localProviderConnString, string remoteProviderConnString) { //Instantiate the sample provider that allows us to create a provider //for both of the peers that are being synchronized. SampleSyncProvider sampleSyncProvider = new SampleSyncProvider(); //Instantiate a DbSyncProvider for the local peer and the remote peer. //For example, if this code is running at peer1 and is //synchronizing with peer2, peer1 would be the local provider //and peer2 the remote provider. DbSyncProvider localProvider = new DbSyncProvider(); DbSyncProvider remoteProvider = new DbSyncProvider(); //Create a provider by using the SetupSyncProvider on the sample class. sampleSyncProvider.SetupSyncProvider(localProviderConnString, localProvider); localProvider.SyncProviderPosition = SyncProviderPosition.Local; sampleSyncProvider.SetupSyncProvider(remoteProviderConnString, remoteProvider); remoteProvider.SyncProviderPosition = SyncProviderPosition.Remote; //Specify event handlers for the ApplyChangeFailed event for each provider. //The handlers are used to resolve conflicting rows and log error information. //<snippetOCSv2_CS_Peer_Conflicts_DbApplyChangeFailedEventHandler> localProvider.ApplyChangeFailed += new EventHandler <DbApplyChangeFailedEventArgs>(dbProvider_ApplyChangeFailed); remoteProvider.ApplyChangeFailed += new EventHandler <DbApplyChangeFailedEventArgs>(dbProvider_ApplyChangeFailed); //</snippetOCSv2_CS_Peer_Conflicts_DbApplyChangeFailedEventHandler> //Specify the local and remote providers that should be synchronized, //and the direction and order of changes. In this case, changes are first //uploaded from remote to local and then downloaded in the other direction. this.LocalProvider = localProvider; this.RemoteProvider = remoteProvider; this.Direction = SyncDirectionOrder.UploadAndDownload; _localProviderDatabase = localProvider.Connection.Database.ToString(); _remoteProviderDatabase = remoteProvider.Connection.Database.ToString(); }