GetFullEnumerationChangeBatch Método

Cuando se invalida en una clase derivada, obtiene un lote de cambios que contiene los metadatos del elemento para los elementos que tienen identificadores iguales o mayores que el límite inferior especificado, como parte de una enumeración completa.

Espacio de nombres:  Microsoft.Synchronization.MetadataStorage
Ensamblado:  Microsoft.Synchronization.MetadataStorage (en Microsoft.Synchronization.MetadataStorage.dll)

public abstract FullEnumerationChangeBatch GetFullEnumerationChangeBatch(
	uint batchSize,
	SyncId lowerEnumerationBound,
	SyncKnowledge destinationKnowledge
)

Parámetros

batchSize
Tipo: System..::..UInt32
Tamaño del lote de cambios que se va a devolver.
lowerEnumerationBound
Tipo: Microsoft.Synchronization..::..SyncId
Límite inferior para los identificadores de elementos. Este método debería devolver cambios que tienen identificadores mayores o iguales que este valor de identificador.
destinationKnowledge
Tipo: Microsoft.Synchronization..::..SyncKnowledge
Conocimiento del proveedor de destino.

Valor devuelto

Tipo: Microsoft.Synchronization..::..FullEnumerationChangeBatch
Un lote de cambios que contiene metadatos del elemento para los elementos que tienen identificadores iguales o mayores que el límite inferior especificado.

ExcepciónCondición
ObjectDisposedException

El objeto se ha eliminado o no se ha inicializado correctamente.

ArgumentOutOfRangeException

batchSize es 0.

ArgumentNullException

lowerEnumerationBound es un valor nullNothingnullptrunites una referencia NULL (Nothing en Visual Basic). o destinationKnowledge es un valor nullNothingnullptrunites una referencia NULL (Nothing en Visual Basic)..

Este método ayuda a un proveedor de sincronización a implementar su método GetFullEnumerationChangeBatch. Se llama a este método durante la recuperación de conocimiento olvidado.

Antes de que los proveedores llamen a este método, deben asegurarse de que las versiones del almacén de metadatos reflejan todos los cambios locales, incluso las eliminaciones. Esto se logra mediante un examen explícito de mantenimiento de metadatos para enumerar los elementos y actualizar sus metadatos.

La implementación de esta clase que está disponible mediante SqlMetadataStore agrega cambios ordenados según su identificador global al lote de cambios.

La implementación de esta clase que está disponible mediante SqlMetadataStore también devuelve todos los elementos con identificadores menores que lowerEnumerationBound que no están contenidos en destinationKnowledge.

La implementación de esta clase que está disponible mediante SqlMetadataStore establece IsLastBatch en true en el lote de cambios devuelto cuando no quedan cambios por enviar.

Notas a los implementadores

Este método debe enumerar, por orden de identificador de elemento, los cambios cuyo identificador de elemento es mayor o igual que lowerEnumerationBound. Esto permite a Sync Framework determinar qué elementos del proveedor de destino se han eliminado pero han sido olvidados por el proveedor de origen.

Si no queda ningún cambio por enviar después de este lote, IsLastBatch debe establecerse en true en el lote de cambios devuelto o Sync Framework llamará de nuevo a GetChangeBatch para recuperar otro lote de cambios.

Para un proveedor que envía datos de elemento junto con metadatos de cambio de elemento, se puede usar destinationKnowledge para determinar si es necesario enviar los datos de elemento. Los datos de elemento no se tienen que enviar cuando el cambio de elemento está contenido en destinationKnowledge.

Mostrar: