Compartilhar via


Classe DbSyncAdapter

Representa um conjunto de comandos que são usados para recuperar e aplicar alterações de dados e metadados ao banco de dados par local.

Namespace:  Microsoft.Synchronization.Data
Assembly:  Microsoft.Synchronization.Data (em Microsoft.Synchronization.Data.dll)

Sintaxe

'Declaração
Public Class DbSyncAdapter
'Uso
Dim instance As DbSyncAdapter
public class DbSyncAdapter
public ref class DbSyncAdapter
type DbSyncAdapter =  class end
public class DbSyncAdapter

Comentários

O DbSyncAdapter serve como ponte entre o DbSyncProvider e o banco de dados par. Modelado de acordo com o adaptador de dados no ADO.NET, o adaptador de sincronização é definido para cada tabela sincronizada. O adaptador de sincronização fornece ao provedor de sincronização de pares os comandos específicos necessários para interagir com o banco de dados par, como o InsertCommand que aplica inserções de um banco de dados par a outro banco de dados par. Como os adaptadores de sincronização usam o objeto ADO.NETDbCommand, é possível usar qualquer estrutura de comando com suporte do ADO.NET. Isso inclui Transact-SQL embutido, procedimentos armazenados, exibições, funções, etc. Os comandos exigem apenas um único resultado que defina a estrutura e os dados a serem transferidos e aplicados.

Exemplos

Os exemplos de código a seguir criam um objeto SyncAdapter para a tabela Customer, especificam que a coluna CustomerId deve ser usada para identificar cada linha na tabela, além de especificarem o comando da propriedade SelectIncrementalChangesCommand. O procedimento armazenado chamado é definido em Scripts de instalação para tópicos de instruções do provedor de banco de dados. Para obter mais informações sobre comandos do adaptador e exibir este código no contexto de um exemplo completo, consulte Como provisionar um banco de dados de servidor para sincronização de colaboração (não SQL Server).

DbSyncAdapter adapterCustomer = new DbSyncAdapter("Customer");


//Specify the primary key, which Sync Framework uses
//to identify each row during synchronization.
adapterCustomer.RowIdColumns.Add("CustomerId");
SqlCommand chgsCustomerCmd = new SqlCommand();
chgsCustomerCmd.CommandType = CommandType.StoredProcedure;
chgsCustomerCmd.CommandText = "Sync.sp_Customer_SelectChanges";
chgsCustomerCmd.Parameters.Add("@" + DbSyncSession.SyncMetadataOnly, SqlDbType.Int);
chgsCustomerCmd.Parameters.Add("@" + DbSyncSession.SyncMinTimestamp, SqlDbType.BigInt);
chgsCustomerCmd.Parameters.Add("@" + DbSyncSession.SyncScopeLocalId, SqlDbType.Int);
chgsCustomerCmd.Parameters.Add("@" + DbSyncSession.SyncInitialize, SqlDbType.Int);

adapterCustomer.SelectIncrementalChangesCommand = chgsCustomerCmd;
Dim adapterCustomer As New DbSyncAdapter("Customer")

'Specify the primary key, which Sync Framework uses
'to identify each row during synchronization.
adapterCustomer.RowIdColumns.Add("CustomerId")
Dim chgsCustomerCmd As New SqlCommand()

With chgsCustomerCmd
    .CommandType = CommandType.StoredProcedure
    .CommandText = "Sync.sp_Customer_SelectChanges"
    .Parameters.Add("@" + DbSyncSession.SyncMetadataOnly, SqlDbType.Int)
    .Parameters.Add("@" + DbSyncSession.SyncMinTimestamp, SqlDbType.BigInt)
    .Parameters.Add("@" + DbSyncSession.SyncScopeLocalId, SqlDbType.Int)
    .Parameters.Add("@" + DbSyncSession.SyncInitialize, SqlDbType.Int)
End With

adapterCustomer.SelectIncrementalChangesCommand = chgsCustomerCmd

Hierarquia de herança

System. . :: . .Object
  Microsoft.Synchronization.Data..::..DbSyncAdapter

Segurança de thread

Quaisquer membros static (Shared no Visual Basic) públicos deste tipo são thread-safe. Não há garantia de que qualquer membro de instância seja thread-safe.

Consulte também

Referência

Membros DbSyncAdapter

Namespace Microsoft.Synchronization.Data