Compartilhar via


ISyncDataConverter::ConvertDataRetrieverToProviderFormat

Converte o recuperador de dados de um formato externo para o formato de recuperador de dados do provedor associado. Este método só será necessário se um ou ambos os provedores de uma sessão de sincronização recuperar dados usando uma interface diferente de ISynchronousDataRetriever ou IAsynchronousDataRetriever.

HRESULT ConvertDataRetrieverToProviderFormat(
  IUnknown *pUnkDataRetrieverIn,
  IEnumSyncChanges *pEnumSyncChanges,
  IUnknown **ppUnkDataOut);

Parâmetros

  • pUnkDataRetrieverIn
    [in] O recuperador de dados a ser convertido.
  • pEnumSyncChanges
    [in] Um objeto IEnumSyncChanges que representa um conjunto de alterações de item.
  • ppUnkDataOut
    [out] O recuperador de dados convertido.

Valor de retorno

  • S_OK.

  • E_NOTIMPL se o recuperador de dados implementar uma das interfaces internas e apenas a conversão de dados for necessária.

  • Valores de erro definidos pelo desenvolvedor

Se for retornado um erro diferente de E_NOTIMPL, a sessão de sincronização será encerrada e retornará o código de erro.

Comentários

Em geral, o modo mais eficiente de converter um recuperador de dados é criar um proxy que implemente a interface de recuperador de dados do provedor e tenha um ponteiro para a interface de recuperador de dados externa. O proxy pode então recuperar dados da interface externa à medida que as alterações forem processadas durante a sessão de sincronização. Em algumas situações, como em cenários remotos de aplicação de alterações, é necessário recuperar todas as alterações primeiro, convertê-las conforme necessário e serializar o recuperador de dados com todos os dados nele. Para essas situações, use pEnumSyncChanges para enumerar todas as alterações que devem ser serializadas.

Consulte também

Referência

Interface ISyncDataConverter

Conceitos

Convertendo dados entre provedores