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
<SuppressMessageAttribute("Microsoft.Naming", "CA1706:ShortAcronymsShouldBeUppercase")> _
Public Class DbSyncAdapter
'Uso
Dim instance As DbSyncAdapter
[SuppressMessageAttribute("Microsoft.Naming", "CA1706:ShortAcronymsShouldBeUppercase")] 
public class DbSyncAdapter
[SuppressMessageAttribute(L"Microsoft.Naming", L"CA1706:ShortAcronymsShouldBeUppercase")] 
public ref class DbSyncAdapter
/** @attribute SuppressMessageAttribute("Microsoft.Naming", "CA1706:ShortAcronymsShouldBeUppercase") */ 
public class DbSyncAdapter
SuppressMessageAttribute("Microsoft.Naming", "CA1706:ShortAcronymsShouldBeUppercase") 
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, você pode usar qualquer estrutura de comando com suporte no 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.

Exemplo

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

Qualquer membro estático público (Compartilhado no Visual Basic) deste tipo é protegido por thread. Não há garantia de que qualquer membro de instância esteja protegido por thread.

Consulte também

Referência

Membros DbSyncAdapter
Namespace Microsoft.Synchronization.Data