Sync Framework: Как указать порядок синхронизации нескольких таблиц? - PullRequest
4 голосов
/ 01 февраля 2010

Кто-нибудь знает способ синхронизации нескольких таблиц в определенном порядке. подробно, есть новые созданные данные в родительских и дочерних таблицах, и для этого требуется, чтобы вставка родительского элемента происходила раньше, чем дочерний процесс.

Ответы [ 2 ]

3 голосов
/ 03 сентября 2012

Порядок обработки каждой таблицы зависит от порядка, в котором ее объект SyncTable был добавлен в коллекцию таблиц для агента синхронизации.

Следующая таблица добавляет таблицу клиентов перед таблицей заказов.

SyncGroup customerOrderSyncGroup = new SyncGroup("CustomerOrder");

SyncTable customerSyncTable = new SyncTable("Customer");
customerSyncTable.CreationOption = TableCreationOption.DropExistingOrCreateNewTable;
customerSyncTable.SyncDirection = SyncDirection.DownloadOnly;
customerSyncTable.SyncGroup = customerOrderSyncGroup;
this.Configuration.SyncTables.Add(customerSyncTable);

SyncTable orderSyncTable = new SyncTable("Order");
orderSyncTable.CreationOption = TableCreationOption.DropExistingOrCreateNewTable;
orderSyncTable.SyncDirection = SyncDirection.DownloadOnly;
orderSyncTable.SyncGroup = customerOrderSyncGroup;
this.Configuration.SyncTables.Add(orderSyncTable);

Более подробная информация здесь

1 голос
/ 26 февраля 2010

Если у вас есть основные подробные записи, такие как order и orderdetail, то, ПРОСТО, ПРОСТО таблицы, которые связаны с их собственной группой синхронизации (создайте другие группы синхронизации для других не связанных таблиц), затем синхронизируйте эту группу внутри транзакции. Это гарантирует, что как основная, так и подробная записи получат синхронизацию или не получат ее.

Кричите, если вам нужно больше о том, как это сделать ..

...