共用方式為


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 是 null 參考 (在 Visual Basic 中為 Nothing) 或 destinationKnowledge 是 null 參考 (在 Visual Basic 中為 Nothing)。

備註

這個方法可協助同步處理提供者實作它的 GetFullEnumerationChangeBatch 方法。在被遺忘的知識復原期間會呼叫這個方法。

當提供者呼叫這個方法之前,他們必須先確定中繼資料存放區內的版本可反映所有的本機變更,包括刪除在內。這是透過明確的中繼資料維護作業來完成,以便列舉項目及更新項目的中繼資料。

透過 SqlMetadataStore 取得之這個類別的實作,會依照全域識別碼順序將變更加入到變更批次。

透過 SqlMetadataStore 取得之這個類別的實作也會傳回識別碼小於 lowerEnumerationBound 而且未包含在 destinationKnowledge 中的所有項目。

當沒有其他變更要傳送時,透過 SqlMetadataStore 取得之這個類別的實作會在傳回的變更批次上將 IsLastBatch 設定為 true

實作器注意事項: 這個方法必須依照項目識別碼的排序次序來列舉項目識別碼等於或大於 lowerEnumerationBound 的變更。如此可讓 Sync Framework 判斷目的地提供者上的哪些項目已被刪除,但是被來源提供者所遺忘。 如果這個批次之後沒有其他變更要傳送,必須在傳回的變更批次上將 IsLastBatch 設定為 true,否則 Sync Framework 將會再次呼叫 GetChangeBatch 來擷取其他變更批次。 對於要同時傳送項目資料與項目變更中繼資料的提供者,可以使用 destinationKnowledge 來判斷是否必須傳送項目資料。如果項目變更是包含在 destinationKnowledge 中,就不需要傳送項目資料。

請參閱

參考

ReplicaMetadata 類別
ReplicaMetadata 成員
Microsoft.Synchronization.MetadataStorage 命名空間