TableCreationOption Enumeración
Define las opciones disponibles para crear una tabla en la base de datos cliente.
Espacio de nombres: Microsoft.Synchronization.Data
Ensamblado: Microsoft.Synchronization.Data (en microsoft.synchronization.data.dll)
Sintaxis
'Declaración
Public Enumeration TableCreationOption
'Uso
Dim instance As TableCreationOption
public enum TableCreationOption
public enum class TableCreationOption
public enum TableCreationOption
public enum TableCreationOption
Miembros
Nombre del miembro | Descripción | |
---|---|---|
CreateNewTableOrFail | Crear la tabla en la base de datos cliente. Si existe una tabla con el mismo nombre, se produce una excepción. | |
DropExistingOrCreateNewTable | Crear la tabla en la base de datos cliente. Si existe una tabla con el mismo nombre, se elimina antes la tabla existente. | |
TruncateExistingOrCreateNewTable | Crear la tabla en la base de datos cliente en caso de que la tabla no exista. Si existe una tabla con el mismo nombre, borrar todas las filas de dicha tabla. | |
UploadExistingOrCreateNewTable | Crear la tabla en la base de datos cliente en caso de que la tabla no exista. Si existe una tabla con el mismo nombre, cargar todas las filas de dicha tabla en la primera sincronización. Esta opción sólo es válida con una SyncDirection de Bidirectional o UploadOnly. | |
UseExistingTableOrFail | Utilizar una tabla existente en la base de datos cliente que tenga el mismo nombre. Si la tabla no existe, se produce una excepción. |
Notas
La propiedad TableCreationOption determina cómo controlar la creación de tablas en la base de datos cliente, particularmente en lo referente a las tablas existentes con el mismo nombre en la base de datos. Para obtener más información, vea Inicializar la base de datos cliente y trabajar con el esquema de tablas.
Ejemplo
El ejemplo de código siguiente procede de una clase derivada de SyncAgent. El código crea dos grupos de sincronización y tres tablas de sincronización. La tabla Customer
se agrega al grupo Customer
y las tablas OrderHeader
y OrderDetail
se agregan al grupo Order
. Todas las tablas son de sólo descarga. Si una tabla ya existe en el cliente, se eliminará y se volverá a crear durante la sincronización inicial. Para consultar este código en el contexto de un ejemplo completo, vea Filtrar filas y columnas.
//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)