IReplicaMetadata2::GetProviderVersion

Возвращает версию поставщика, которая работает с этими метаданными.

HRESULT GetProviderVersion(
  ULONG * pulProviderVersion);

Параметры

  • pulProviderVersion
    [out, retval] Возвращает версию поставщика, которая работает с этими метаданными.

Возвращаемое значение

  • S_OK

  • E_POINTER

Замечания

Версия поставщика используется для достижения совместимости с другими версиями поставщика. Рассмотрим следующий сценарий.

  • Существует три версии поставщика (v1, v2 и v3).

  • В версии v2 в пользовательской схеме поставщика сделано несовместимое изменение.

  • Версии v2 и v3 несовместимы между собой.

Поставщик версии v3 может указать в свойстве IReplicaMetadata2::SetProviderVersion значение v2. Версию поставщика, необходимую для работы с метаданными, поставщик версии v2 или v3 может проверить через свойство GetProviderVersion. Поскольку это значение сериализуется в каноническом формате хранилища метаданных, версию поставщика можно также проверить после десериализации метаданных, указав значение v2 в качестве параметра dwExpectedProviderCompatibilityVersion метода ISyncMetadataStoreSerializer::DeserializeReplicaMetadata. Поставщик версии v1 ожидает значения v1 и завершает десериализацию по ошибке, если метаданные несовместимы с версией v1.

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

См. также

Справочник

Интерфейс IReplicaMetadata2