Поделиться через


Реализация простого настраиваемого поставщика

Платформа Sync Framework предоставляет разнообразные API-интерфейсы, от специфических для конкретной области применения (как служба синхронизации файлов) до универсальных базовых API-интерфейсов, позволяющих проводить синхронизацию любого хранилища данных. API-интерфейсы простых поставщиков находятся посередине этого диапазона. Они предоставляют разработчикам большую часть мощности и гибкости базовых API-интерфейсов, но их легче освоить, и для их применения требуется создавать меньший объем кода, особенно для реплик, которые не поддерживают или почти не поддерживают отслеживание изменений. API-интерфейс простых поставщиков можно расширять, но он предназначен в основном для работы с двумя типами реплик.

  • Реплики, которые не поддерживают никакого отслеживания изменений. Реплики такого типа используют поставщик полного перечисления, который перечисляет все элементы реплики источника при каждой синхронизации.

  • Реплики, которые поддерживают отслеживание изменений на основе привязок. Реплики такого типа используют поставщик на основе привязок, который перечисляет элементы реплики источника, изменившиеся после установки конкретной привязки (обычно это определенный момент времени).

Дополнительную информацию о пользовательских поставщиках см. в разделе Основные принципы построения пользовательских поставщиков, особенно в подразделе «Выбор между простым и стандартным поставщиками».

Первичные интерфейсы и важные параметры

Интерфейсы простых поставщиков поставляются как в управляемом, так и в машинном коде. Управляемый код находится в пространстве имен Microsoft.Synchronization.SimpleProviders в библиотеке Microsoft.Synchronization.SimpleProviders.dll; дополнительную информацию см. в разделе Microsoft.Synchronization.SimpleProviders. Машинный код находится в библиотеке providerframework.dll и требует включения заголовочных файлов anchorenumerationprovider.h и fullenumerationprovider.h; дополнительную информацию см. в разделе Простой поставщик Sync Framework.

Определены следующие первичные интерфейсы для простых поставщиков.

Управляемые интерфейсы

Неуправляемые интерфейсы

FullEnumerationSimpleSyncProvider

Интерфейс IFullEnumerationSyncProvider

AnchorEnumerationSimpleSyncProvider

Интерфейс IAnchorSyncProvider

FullEnumerationContext

Интерфейс IFullEnumerationCallback

AnchorEnumerationContext

Интерфейс IAnchorChangeDetectionCallback

ItemEnumerationContext

 

Интерфейсы поставщиков реализуются разработчиком. Методы поставщика — управляемые UpdateItem и неуправляемые UpdateItem — вызываются платформами Sync Framework времени выполнения при каждом сеансе синхронизации для выборки и применения изменений. Каждый из этих методов нужно реализовать. Реализация учитывает свойства конкретной реплики и хранилища элементов, а также свойства и потребности приложения. Например, метод обновления должен иметь возможность провести обновление в хранилище данных назначения, реализуя нужную бизнес-логику и надлежащим образом реагируя на любую бизнес-логику, нужную данному приложению для обновлений. Интерфейсы контекста и обратного вызова реализуются платформами Sync Framework и предоставляют способ доступа к контексту сеанса синхронизации. Кроме первичных интерфейсов, API-интерфейс простого поставщика включает в себя важные параметры в следующих областях.

Дополнительные сведения о вопросах разработки при создании управляемого простого поставщика см. в разделе Рекомендации по разработке простого пользовательского поставщика.

Дополнительные сведения о создании управляемого простого поставщика см. в разделе Как создать управляемый простой поставщик.

См. также

Справочник

Microsoft.Synchronization.SimpleProviders

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

Синхронизация хранилищ данных с помощью пользовательских поставщиков

Новые возможности Sync Framework 2.1

Простой поставщик Sync Framework