Condividi tramite


IKnowledgeSyncProvider::GetFullEnumerationChangeBatch

Ottiene un batch di modifiche contenente metadati per elementi con ID superiori al limite inferiore specificato, come parte di un'enumerazione completa.

HRESULT GetFullEnumerationChangeBatch(
DWORD dwBatchSize,
  const BYTE * pbLowerEnumerationBound,
  ISyncKnowledge * pSyncKnowledge,
  ISyncFullEnumerationChangeBatch ** ppSyncChangeBatch,
  IUnknown ** ppUnkDataRetriever);

Parametri

  • dwBatchSize
    [in] Numero di modifiche da includere nel batch di modifiche.
  • pbLowerEnumerationBound
    [in] Limite inferiore per gli ID elemento. Questo metodo restituisce le modifiche con ID superiori o uguali a questo valore ID.
  • pSyncKnowledge
    [in] Se in questo oggetto conoscenza è presente una modifica di elemento, i dati per tale elemento esistono già nella replica di destinazione.
  • ppSyncChangeBatch
    [out] Restituisce un batch di modifiche contenente metadati per elementi con ID superiori al limite inferiore specificato.
  • ppUnkDataRetriever
    [out] Restituisce un oggetto che può essere utilizzato per recuperare i dati di modifica. Può essere un oggetto ISynchronousDataRetriever o un oggetto specifico del provider.

Valore restituito

  • S_OK

  • Codici di errore determinati dal provider

Osservazioni

Questo metodo viene chiamato da Sync Framework durante il recupero della conoscenza dimenticata.

Questo metodo enumera, in base al criterio di ordinamento per ID elemento, le modifiche con ID elemento superiore o uguale a pbLowerEnumerationBound. In questo modo, Sync Framework è in grado di determinare quali elementi nel provider di destinazione sono stati eliminati, ma dimenticati dal provider di origine. Se lo si desidera, questo metodo consente anche di aggiungere modifiche al batch, ordinate per ID elemento, con ID inferiori a pbLowerEnumerationBound e che non sono contenute nella conoscenza della destinazione.

Note per gli implementatori

Se non sono disponibili altre modifiche da inviare dopo questo batch, è necessario chiamare ISyncChangeBatchBase::SetLastBatch nel batch di modifiche restituito. In caso contrario, Sync Framework chiama nuovamente GetFullEnumerationChangeBatch per recuperare un altro batch di modifiche.

Per un provider che invia i dati dell'elemento insieme ai metadati della modifica dell'elemento, è possibile utilizzare pSyncKnowledge per determinare se sia o meno necessario inviare i dati dell'elemento. Se la modifica dell'elemento è contenuta in pSyncKnowledge, non è necessario inviare i dati dell'elemento. È importante considerare che prima che sia possibile utilizzarlo per controllare gli elementi per il contenuto, pSyncKnowledge deve essere mappato tramite il metodo ISyncKnowledge::MapRemoteToLocal nell'oggetto conoscenza contenuto nel provider corrente.

Vedere anche

Riferimento

Interfaccia IKnowledgeSyncProvider

Concetti

Recupero di una replica non aggiornata