Поделиться через


Класс SqlSyncAdapterBuilder

Создает объект SyncAdapter и команды SQL, необходимые для синхронизации клиента с базой данных SQL Server.

Пространство имен:  Microsoft.Synchronization.Data.Server
Сборка:  Microsoft.Synchronization.Data.Server (в Microsoft.Synchronization.Data.Server.dll)

Синтаксис

'Декларация
Public Class SqlSyncAdapterBuilder _
    Inherits Component
'Применение
Dim instance As SqlSyncAdapterBuilder
public class SqlSyncAdapterBuilder : Component
public ref class SqlSyncAdapterBuilder : public Component
type SqlSyncAdapterBuilder =  
    class
        inherit Component
    end
public class SqlSyncAdapterBuilder extends Component

Замечания

Построитель адаптера синхронизации создан по образцу построителя команд в среде ADO.NET. Это средство позволяет разрабатывать код для команд синхронизации, выполняемых службой синхронизации сервера. На основе предоставленных пользователем данных о таблицах, задействованных в синхронизации, построитель адаптера синхронизации формирует инструкции SELECT, INSERT, UPDATE и DELETE для баз данных SQL Server. Построитель адаптера синхронизации позволяет указать следующие сведения:

  • таблицы, которые должны быть синхронизированы;

  • столбцы отслеживания в этих таблицах;

  • направление синхронизации;

  • критерии включения строк и столбцов.

На основе этих данных построитель адаптера синхронизации создает адаптер синхронизации и команды Transact-SQL. Построитель адаптера синхронизации совместим с SQL Server 2000 и более поздними версиями.

Примечание

Построитель адаптера синхронизации можно использовать для знакомства с командами синхронизации. Однако команды, в которых используются хранимые процедуры, рекомендуется по возможности задавать вручную. Хранимые процедуры позволяют повысить производительность и защищенность приложения.

Примеры

В следующем примере кода создается объект SyncAdapter для таблицы Customer при помощи SqlSyncAdapterBuilder. Столбцы в таблице указаны для нескольких свойств, а синхронизация определена как двунаправленная. Чтобы просмотреть этот код в контексте полного примера, см. раздел Как работать с событиями и бизнес-логикой программы.

SqlSyncAdapterBuilder customerBuilder = new SqlSyncAdapterBuilder(serverConn);

customerBuilder.TableName = "Sales.Customer";
customerBuilder.TombstoneTableName = customerBuilder.TableName + "_Tombstone";
customerBuilder.SyncDirection = SyncDirection.Bidirectional;
customerBuilder.CreationTrackingColumn = "InsertTimestamp";
customerBuilder.UpdateTrackingColumn = "UpdateTimestamp";
customerBuilder.DeletionTrackingColumn = "DeleteTimestamp";
customerBuilder.CreationOriginatorIdColumn = "InsertId";
customerBuilder.UpdateOriginatorIdColumn = "UpdateId";
customerBuilder.DeletionOriginatorIdColumn = "DeleteId";

SyncAdapter customerSyncAdapter = customerBuilder.ToSyncAdapter();
customerSyncAdapter.TableName = "Customer";
this.SyncAdapters.Add(customerSyncAdapter);
Dim customerBuilder As New SqlSyncAdapterBuilder(serverConn)
With customerBuilder
    .TableName = "Sales.Customer"
    .TombstoneTableName = customerBuilder.TableName + "_Tombstone"
    .SyncDirection = SyncDirection.Bidirectional
    .CreationTrackingColumn = "InsertTimestamp"
    .UpdateTrackingColumn = "UpdateTimestamp"
    .DeletionTrackingColumn = "DeleteTimestamp"
    .CreationOriginatorIdColumn = "InsertId"
    .UpdateOriginatorIdColumn = "UpdateId"
    .DeletionOriginatorIdColumn = "DeleteId"
End With

Dim customerSyncAdapter As SyncAdapter = customerBuilder.ToSyncAdapter()
customerSyncAdapter.TableName = "Customer"
Me.SyncAdapters.Add(customerSyncAdapter)

Иерархия наследования

System. . :: . .Object
  System. . :: . .MarshalByRefObject
    System.ComponentModel. . :: . .Component
      Microsoft.Synchronization.Data.Server..::..SqlSyncAdapterBuilder

Потоковая защита

Все открытые статический (Shared в Visual Basic) элементы этого типа потокобезопасны. Потокобезопасность элементов экземпляров не гарантируется.

См. также

Справочник

Элементы SqlSyncAdapterBuilder

Пространство имен Microsoft.Synchronization.Data.Server