Перечисление TableCreationOption

Определяет параметры, доступные для создания таблицы в клиентской базе данных.

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

Синтаксис

'Декларация
Public Enumeration TableCreationOption
'Применение
Dim instance As TableCreationOption
public enum TableCreationOption
public enum class TableCreationOption
public enum TableCreationOption
public enum TableCreationOption

Элементы

  Имя члена Описание
CreateNewTableOrFail Создать таблицу в клиентской базе данных. Если таблица с таким же именем уже существует, необходимо вызвать исключение. 
DropExistingOrCreateNewTable Создать таблицу в клиентской базе данных. Если таблица с таким же именем уже существует, необходимо сначала удалить ее. 
TruncateExistingOrCreateNewTable Создать таблицу в клиентской базе данных, если таблица еще не существует. Если таблица с таким же именем уже существует, необходимо удалить из нее все строки. 
UploadExistingOrCreateNewTable Создать таблицу в клиентской базе данных, если таблица еще не существует. Если таблица с таким же именем уже существует, во время первой синхронизации необходимо передать все строки из этой таблицы. Этот параметр допустим только в том случае, если значение SyncDirection равно Bidirectional или UploadOnly
UseExistingTableOrFail Использовать существующую таблицу с тем же именем в клиентской базе данных. Если таблица не существует, необходимо вызвать исключение. 

Замечания

Свойство TableCreationOption определяет порядок создания таблиц в клиентской базе данных (в частности, обработку ситуаций, когда в базе данных уже есть таблица с тем же именем). Дополнительные сведения см. в разделе Как инициализировать клиентскую базу данных и работать со схемой таблицы.

Пример

Следующий пример кода представляет собой класс, который является производным от класса SyncAgent. В коде создаются две группы и три таблицы синхронизации. Таблица Customer добавляется в группу Customer, а таблицы OrderHeader и OrderDetail — в группу Order. Все таблицы доступны только для загрузки. Если таблица существует на клиенте, при начальной синхронизации она будет удалена и создана повторно. Чтобы просмотреть этот код в контексте полного примера, см. раздел Как фильтровать строки и столбцы.

//Create two SyncGroups so that changes to OrderHeader
//and OrderDetail are made in one transaction. Depending on
//application requirements, you might include Customer
//in the same group.
SyncGroup customerSyncGroup = new SyncGroup("Customer");
SyncGroup orderSyncGroup = new SyncGroup("Order");

//Add each table: specify a synchronization direction of
//DownloadOnly.
SyncTable customerSyncTable = new SyncTable("Customer");
customerSyncTable.CreationOption = TableCreationOption.DropExistingOrCreateNewTable;
customerSyncTable.SyncDirection = SyncDirection.DownloadOnly;
customerSyncTable.SyncGroup = customerSyncGroup;
this.Configuration.SyncTables.Add(customerSyncTable);

SyncTable orderHeaderSyncTable = new SyncTable("OrderHeader");
orderHeaderSyncTable.CreationOption = TableCreationOption.DropExistingOrCreateNewTable;
orderHeaderSyncTable.SyncDirection = SyncDirection.DownloadOnly;
orderHeaderSyncTable.SyncGroup = orderSyncGroup;
this.Configuration.SyncTables.Add(orderHeaderSyncTable);           

SyncTable orderDetailSyncTable = new SyncTable("OrderDetail");
orderDetailSyncTable.CreationOption = TableCreationOption.DropExistingOrCreateNewTable;
orderDetailSyncTable.SyncDirection = SyncDirection.DownloadOnly;
orderDetailSyncTable.SyncGroup = orderSyncGroup;
this.Configuration.SyncTables.Add(orderDetailSyncTable);
'Create two SyncGroups so that changes to OrderHeader
'and OrderDetail are made in one transaction. Depending on
'application requirements, you might include Customer
'in the same group.
Dim customerSyncGroup As New SyncGroup("Customer")
Dim orderSyncGroup As New SyncGroup("Order")

'Add each table: specify a synchronization direction of
'DownloadOnly.
Dim customerSyncTable As New SyncTable("Customer")
customerSyncTable.CreationOption = TableCreationOption.DropExistingOrCreateNewTable
customerSyncTable.SyncDirection = SyncDirection.DownloadOnly
customerSyncTable.SyncGroup = customerSyncGroup
Me.Configuration.SyncTables.Add(customerSyncTable)

Dim orderHeaderSyncTable As New SyncTable("OrderHeader")
orderHeaderSyncTable.CreationOption = TableCreationOption.DropExistingOrCreateNewTable
orderHeaderSyncTable.SyncDirection = SyncDirection.DownloadOnly
orderHeaderSyncTable.SyncGroup = orderSyncGroup
Me.Configuration.SyncTables.Add(orderHeaderSyncTable)

Dim orderDetailSyncTable As New SyncTable("OrderDetail")
orderDetailSyncTable.CreationOption = TableCreationOption.DropExistingOrCreateNewTable
orderDetailSyncTable.SyncDirection = SyncDirection.DownloadOnly
orderDetailSyncTable.SyncGroup = orderSyncGroup
Me.Configuration.SyncTables.Add(orderDetailSyncTable)

См. также

Справочник

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