Condividi tramite


Classe SqlCeSyncProvider

Incapsula un provider di sincronizzazione per SQL Server Compact che comunica con il client e protegge l'agente di orchestrazione della sincronizzazione dall'implementazione specifica del database client.

Questa classe non è conforme a CLS.  

Spazio dei nomi: Microsoft.Synchronization.Data.SqlServerCe
Assembly: Microsoft.Synchronization.Data.SqlServerCe (in microsoft.synchronization.data.sqlserverce.dll)

Sintassi

'Dichiarazione
<CLSCompliantAttribute(False)> _
Public Class SqlCeSyncProvider
    Inherits RelationalSyncProvider
'Utilizzo
Dim instance As SqlCeSyncProvider
[CLSCompliantAttribute(false)] 
public class SqlCeSyncProvider : RelationalSyncProvider
[CLSCompliantAttribute(false)] 
public ref class SqlCeSyncProvider : public RelationalSyncProvider
/** @attribute CLSCompliantAttribute(false) */ 
public class SqlCeSyncProvider extends RelationalSyncProvider
CLSCompliantAttribute(false) 
public class SqlCeSyncProvider extends RelationalSyncProvider

Osservazioni

Di seguito sono elencate le principali attività eseguite di un provider di sincronizzazione:

  • Archivia informazioni sulle tabelle attivate per la sincronizzazione nel peer.

  • Consente alle applicazioni di recuperare le modifiche che si sono verificate nel database dopo l'ultima sincronizzazione.

  • Applica le modifiche incrementali al database.

  • Rileva le modifiche in conflitto.

Esempio

Nell'esempio di codice seguente vengono create istanze dei provider per tre sessioni di sincronizzazione diverse: tra un server e un client SQL Server, tra il server e il client SQL Server, tra il client SQL Server e uno dei client SQL Server Compact e tra il server e l'altro client SQL Server Compact. Uno dei client SQL Server Compact viene inizializzato tramite uno snapshot del database. Per visualizzare questo codice nel contesto di un esempio completo, vedere Procedura: configurare ed eseguire la sincronizzazione in scenari di collaborazione (SQL Server).

SampleSyncOrchestrator syncOrchestrator;
SyncOperationStatistics syncStats;

// Data is downloaded from the server to the SQL Server client.
syncOrchestrator = new SampleSyncOrchestrator(
    new SqlSyncProvider("filtered_customer", clientSqlConn, null, "Sync"),
    new SqlSyncProvider("filtered_customer", serverConn, null, "Sync")
    );
syncStats = syncOrchestrator.Synchronize();
syncOrchestrator.DisplayStats(syncStats, "initial");

// Data is downloaded from the SQL Server client to the 
// first SQL Server Compact client.
syncOrchestrator = new SampleSyncOrchestrator(
    new SqlCeSyncProvider("filtered_customer", clientSqlCe1Conn, "Sync"),
    new SqlSyncProvider("filtered_customer", clientSqlConn, null, "Sync")
    );
syncStats = syncOrchestrator.Synchronize();
syncOrchestrator.DisplayStats(syncStats, "initial");

// Create a snapshot from the SQL Server Compact database, which will be used to
// initialize a second Compact database. Again, this database could be provisioned
// by retrieving scope information from another database, but we want to 
// demonstrate the use of snapshots, which provide a convenient deployment
// mechanism for Compact databases.
SqlCeSyncStoreSnapshotInitialization syncStoreSnapshot = new SqlCeSyncStoreSnapshotInitialization("Sync");
syncStoreSnapshot.GenerateSnapshot(clientSqlCe1Conn, "SyncSampleClient2.sdf");

// The new SQL Server Compact client synchronizes with the server, but
// no data is downloaded because the snapshot already contains 
// all of the data from the first Compact database.
syncOrchestrator = new SampleSyncOrchestrator(
    new SqlSyncProvider("filtered_customer", serverConn, null, "Sync"),
    new SqlCeSyncProvider("filtered_customer", clientSqlCe2Conn, "Sync")
    );
syncStats = syncOrchestrator.Synchronize();
syncOrchestrator.DisplayStats(syncStats, "initial");
Dim syncOrchestrator As SampleSyncOrchestrator
Dim syncStats As SyncOperationStatistics

' Data is downloaded from the server to the SQL Server client. 
syncOrchestrator = New SampleSyncOrchestrator( _
    New SqlSyncProvider("filtered_customer", clientSqlConn, Nothing, "Sync"), _
    New SqlSyncProvider("filtered_customer", serverConn, Nothing, "Sync"))
syncStats = syncOrchestrator.Synchronize()
syncOrchestrator.DisplayStats(syncStats, "initial")

' Data is downloaded from the SQL Server client to the 
' first SQL Server Compact client. 
syncOrchestrator = New SampleSyncOrchestrator( _
    New SqlCeSyncProvider("filtered_customer", clientSqlCe1Conn, "Sync"), _
    New SqlSyncProvider("filtered_customer", clientSqlConn, Nothing, "Sync"))
syncStats = syncOrchestrator.Synchronize()
syncOrchestrator.DisplayStats(syncStats, "initial")

' Create a snapshot from the SQL Server Compact database, which will be used to 
' initialize a second Compact database. Again, this database could be provisioned 
' by retrieving scope information from another database, but we want to 
' demonstrate the use of snapshots, which provide a convenient deployment 
' mechanism for Compact databases. 
Dim syncStoreSnapshot As New SqlCeSyncStoreSnapshotInitialization("Sync")
syncStoreSnapshot.GenerateSnapshot(clientSqlCe1Conn, "SyncSampleClient2.sdf")

' The new SQL Server Compact client synchronizes with the server, but 
' no data is downloaded because the snapshot already contains 
' all of the data from the first Compact database. 
syncOrchestrator = New SampleSyncOrchestrator( _
    New SqlSyncProvider("filtered_customer", serverConn, Nothing, "Sync"), _
    New SqlCeSyncProvider("filtered_customer", clientSqlCe2Conn, "Sync"))
syncStats = syncOrchestrator.Synchronize()
syncOrchestrator.DisplayStats(syncStats, "initial")

Gerarchia di ereditarietà

System.Object
   Microsoft.Synchronization.SyncProvider
     Microsoft.Synchronization.KnowledgeSyncProvider
       Microsoft.Synchronization.Data.RelationalSyncProvider
        Microsoft.Synchronization.Data.SqlServerCe.SqlCeSyncProvider

Thread Safety

Tutti i membri statici pubblici (Shared in Visual Basic) di questo tipo sono thread safe. I membri di istanza non hanno garanzia di essere thread safe.

Vedere anche

Riferimento

Membri SqlCeSyncProvider
Spazio dei nomi Microsoft.Synchronization.Data.SqlServerCe