Синхронизация других баз данных, совместимых с ADO.NET

В этом разделе приведены общие сведения, процедуры и полные примеры кода для обычных задач синхронизации, которые можно выполнить с помощью платформы Sync Framework. Назначение этих разделов — продемонстрировать, как можно выполнить синхронизацию баз данных, отличных от SQL Server, с помощью платформы Sync Framework. В этой версии в примерах кода используется SQL Server, но сам код можно использовать для других, совместимых с ADO.NET, баз данных с некоторыми изменениями специфических объектов SQL Server (например, SqlConnection) и отображаемых SQL-запросов. Дополнительные сведения о синхронизации SQL Server (включая выпуски SQL Server Express и SQL Server Compact) см. в разделе Как настроить и выполнить синхронизацию базы данных (SQL Server).

В этом разделе

Примеры приложений в разделах инструкций

Каждый раздел инструкций содержит одно приложение командной строки. Это приложение написано на языках C# и Visual Basic и демонстрирует конкретные функции API. Хотя было бы проще показать только примеры кода для определенной задачи или функции, но легче понять, как работают службы Sync Framework, если увидеть отдельную функцию в достаточно полном контексте.

Каждое приложение содержит классы, относящиеся к описываемым функциям, а также следующие классы.

  • Program. Этот класс подготавливает синхронизацию и вызывает методы класса Utility. Класс Utility обрабатывает все функции, не относящиеся непосредственно к синхронизации, в частности сохраняет информацию о строке соединения и выполняет изменения в базе данных, используемой в процессе синхронизации.

  • SampleSyncAgent. Этот класс является производным от SyncOrchestrator.

  • SampleSyncProvider. Этот класс содержит метод, создающий объекты DbSyncProvider или SqlCeSyncProvider для каждого синхронизируемого узла и объект DbSyncAdapter для каждой синхронизируемой таблицы с помощью класса DbSyncProvider.

Код для всех приложений тестировался в среде Visual Studio 2008 и SQL Server 2008.

Запуск каждого приложения

  1. Выполните скрипт Transact-SQL «Пользовательское отслеживание изменений для совместной работы» из раздела Инструкции по сценариям установки для поставщика базы данных. Этот скрипт создает три базы данных (каждая с набором таблиц и триггеров) и набор хранимых процедур. Для удаления и повторной вставки образцов данных используется хранимая процедура usp_ResetPeerData.

  2. Скопируйте код класса Utility из раздела Инструкции по классу Utility для поставщика базы данных. Вставьте этот код в каждое из приложений, предназначенных для запуска, либо создайте на его основе DLL-библиотеку и ссылайтесь на нее из каждого приложения. В качестве имени базы данных строки соединения с базой данных в этом классе используется localhost. При необходимости измените имя базы данных.

  3. Добавьте ссылки на следующие DLL-библиотеки.

    • Microsoft.Synchronization.dll

    • Microsoft.Synchronization.Data.dll

    • Microsoft.Synchronization.Data.SqlServerCe.dll и System.Data.SqlServerCe.dll (требуется не для всех примеров)

См. также

Другие ресурсы

Архитектура и классы для синхронизации базы данных

Сценарии синхронизации баз данных

Как настроить и выполнить синхронизацию базы данных (SQL Server)