Freigeben über


TableCreationOption-Enumeration

Definiert die Optionen, die zum Erstellen einer Tabelle in der Clientdatenbank zur Verfügung stehen.

Namespace: Microsoft.Synchronization.Data
Assembly: Microsoft.Synchronization.Data (in microsoft.synchronization.data.dll)

Syntax

'Declaration
Public Enumeration TableCreationOption
'Usage
Dim instance As TableCreationOption
public enum TableCreationOption
public enum class TableCreationOption
public enum TableCreationOption
public enum TableCreationOption

Member

  Membername Beschreibung
CreateNewTableOrFail Die Tabelle in der Clientdatenbank erstellen. Wenn eine vorhandene Tabelle den gleichen Namen hat, eine Ausnahme auslösen. 
DropExistingOrCreateNewTable Die Tabelle in der Clientdatenbank erstellen. Wenn eine vorhandene Tabelle den gleichen Namen hat, die vorhandene Tabelle zuerst löschen. 
TruncateExistingOrCreateNewTable Die Tabelle in der Clientdatenbank erstellen, wenn die Tabelle nicht vorhanden ist. Wenn eine vorhandene Tabelle den gleichen Namen hat, alle Zeilen aus dieser Tabelle löschen. 
UploadExistingOrCreateNewTable Die Tabelle in der Clientdatenbank erstellen, wenn die Tabelle nicht vorhanden ist. Wenn eine vorhandene Tabelle den gleichen Namen hat, bei der ersten Synchronisierung alle Zeilen aus dieser Tabelle hochladen. Diese Option ist nur gültig, wenn SyncDirection den Wert Bidirectional oder UploadOnly hat. 
UseExistingTableOrFail Eine vorhandene Tabelle in der Clientdatenbank verwenden, die den gleichen Namen hat. Wenn die Tabelle nicht vorhanden ist, eine Ausnahme auslösen. 

Hinweise

Die TableCreationOption-Eigenschaft bestimmt die Vorgehensweise bei der Erstellung von Tabellen in der Clientdatenbank, insbesondere hinsichtlich bereits bestehender Tabellen desselben Namens in der Datenbank. Weitere Informationen dazu finden Sie unter Vorgehensweise: Initialisieren der Clientdatenbank und Arbeiten mit dem Tabellenschema.

Beispiel

Das folgende Codebeispiel stammt aus einer Klasse, die von der SyncAgent-Klasse abgeleitet ist. Der Code erstellt zwei Synchronisierungsgruppen und drei Synchronisierungstabellen. Die Customer-Tabelle wird der Customer-Gruppe und die OrderHeader-Tabelle sowie die OrderDetail-Tabelle werden der Order-Gruppe hinzugefügt. Alle Tabellen können nur heruntergeladen werden. Wenn eine Tabelle auf einem Client vorhanden ist, wird sie verworfen und während der ersten Synchronisierung neu erstellt. Eine Darstellung dieses Codes im Kontext eines vollständigen Beispiels finden Sie unter Vorgehensweise: Filtern von Zeilen und Spalten.

//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)

Siehe auch

Verweis

Microsoft.Synchronization.Data-Namespace