Поделиться через


Метод ReplicaMetadata.GetFullEnumerationChangeBatch

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

Пространство имен: Microsoft.Synchronization.MetadataStorage
Сборка: Microsoft.Synchronization.MetadataStorage (в microsoft.synchronization.metadatastorage.dll)

Синтаксис

'Декларация
Public MustOverride Function GetFullEnumerationChangeBatch ( _
    batchSize As UInteger, _
    lowerEnumerationBound As SyncId, _
    destinationKnowledge As SyncKnowledge _
) As FullEnumerationChangeBatch
'Применение
Dim instance As ReplicaMetadata
Dim batchSize As UInteger
Dim lowerEnumerationBound As SyncId
Dim destinationKnowledge As SyncKnowledge
Dim returnValue As FullEnumerationChangeBatch

returnValue = instance.GetFullEnumerationChangeBatch(batchSize, lowerEnumerationBound, destinationKnowledge)
public abstract FullEnumerationChangeBatch GetFullEnumerationChangeBatch (
    uint batchSize,
    SyncId lowerEnumerationBound,
    SyncKnowledge destinationKnowledge
)
public:
virtual FullEnumerationChangeBatch^ GetFullEnumerationChangeBatch (
    unsigned int batchSize, 
    SyncId^ lowerEnumerationBound, 
    SyncKnowledge^ destinationKnowledge
) abstract
public abstract FullEnumerationChangeBatch GetFullEnumerationChangeBatch (
    UInt32 batchSize, 
    SyncId lowerEnumerationBound, 
    SyncKnowledge destinationKnowledge
)
public abstract function GetFullEnumerationChangeBatch (
    batchSize : uint, 
    lowerEnumerationBound : SyncId, 
    destinationKnowledge : SyncKnowledge
) : FullEnumerationChangeBatch

Параметры

  • batchSize
    Размер возвращаемого пакета изменений.
  • lowerEnumerationBound
    Нижняя граница для значений идентификаторов элементов. Этот метод вернет все изменения, которые имеют значение идентификатора больше заданного или равное заданному.
  • destinationKnowledge
    Набор знаний от поставщика назначения.

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

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

Исключения

Тип исключения Условие

ObjectDisposedException

Объект удален или неправильно инициализирован.

ArgumentOutOfRangeException

Параметр batchSize равен 0.

ArgumentNullException

Параметр lowerEnumerationBound равен пустая ссылка (Nothing в Visual Basic), или параметр destinationKnowledge равен пустая ссылка (Nothing в Visual Basic).

Замечания

Этот метод упрощает реализацию метода GetFullEnumerationChangeBatch для службы синхронизации. Этот метод вызывается в процессе восстановления утраченного набора знаний.

Перед вызовом этого метода поставщик должен убедиться, что версии в хранилище метаданных отражают все локальные изменения, включая операции удаления. Это достигается с помощью явного этапа обслуживания метаданных, в котором перечисляются элементы и обновляются их метаданные.

Реализация этого класса, которая возможна через класс SqlMetadataStore, добавляет изменения в пакет в порядке глобальных идентификаторов.

Реализация этого класса, доступная через класс SqlMetadataStore, также возвращает все элементы с идентификаторами, значения которых меньше значения lowerEnumerationBound и которые отсутствуют в destinationKnowledge.

Реализация этого класса, которая возможна через класс SqlMetadataStore, устанавливает свойство IsLastBatch в значение true для возвращаемого пакета изменений, если отсутствуют неотправленные изменения.

Примечания по реализации. Этот метод должен перечислить (с соблюдением порядка отсортированных идентификаторов элементов) каждое из изменений с идентификатором элемента, большим или равным значению lowerEnumerationBound. Это позволяет платформе Sync Framework определить, какие из элементов поставщика назначения были удалены, но при этом утрачены поставщиком источника. Если после этого пакета не осталось ни одного неотправленного изменения, то в возвращаемом пакете изменений необходимо установить свойство IsLastBatch в значение true. В противном случае Sync Framework повторно вызовет метод GetChangeBatch, чтобы получить следующий пакет изменений. Для поставщика, отправляющего данные элемента вместе с метаданными изменения элемента, параметр destinationKnowledge может использоваться для определения необходимости отправки данных элемента. Если изменение элемента содержится в параметре destinationKnowledge, то данные элемента отправлять не нужно.

См. также

Справочник

Класс ReplicaMetadata
Элементы ReplicaMetadata
Пространство имен Microsoft.Synchronization.MetadataStorage