Compartilhar via


IReplicaMetadata2::GetProviderVersion

Obtém a versão do provedor que opera nesses metadados.

HRESULT GetProviderVersion(
  ULONG * pulProviderVersion);

Parâmetros

  • pulProviderVersion
    [out, retval] Retorna a versão do provedor que opera nesses metadados.

Valor de retorno

  • S_OK

  • E_POINTER

Comentários

A versão do provedor é usada para negociar a compatibilidade com outras versões de um provedor. Considere o seguinte cenário:

  • Há três versões de um provedor (v1, v2 e v3).

  • Na v2, uma alteração incompatível foi feita no esquema personalizado do provedor.

  • A v2 e a v3 são compatíveis.

Um provedor v3 pode especificar um valor v2 como IReplicaMetadata2::SetProviderVersion. Um provedor v2 ou v3 pode então verificar a versão do provedor necessária para operar nos metadados usando GetProviderVersion. Como esse valor é serializado como parte do formato canônico do repositório de metadados, a versão do provedor também pode ser verificada quando os metadados são desserializados, especificando um valor da v2 para o parâmetro dwExpectedProviderCompatibilityVersion de ISyncMetadataStoreSerializer::DeserializeReplicaMetadata. O provedor v1 esperaria um valor de v1 e a desserialização falharia intencionalmente porque os metadados são incompatíveis com a v1.

Use a versão mais baixa possível para assegurar o nível mais alto de compatibilidade com outras versões do mesmo provedor.

Consulte também

Referência

Interface IReplicaMetadata2