KnowledgeSyncProvider.GetChangeBatch メソッド

派生クラスでオーバーライドされると、同期先プロバイダからの指定されたナレッジに含まれていない項目に関する、項目メタデータが含まれた変更バッチを取得します。

名前空間: Microsoft.Synchronization
アセンブリ: Microsoft.Synchronization (microsoft.synchronization.dll 内)

構文

'宣言
Public MustOverride Function GetChangeBatch ( _
    batchSize As UInteger, _
    destinationKnowledge As SyncKnowledge, _
    <OutAttribute> ByRef changeDataRetriever As Object _
) As ChangeBatch
'使用
Dim instance As KnowledgeSyncProvider
Dim batchSize As UInteger
Dim destinationKnowledge As SyncKnowledge
Dim changeDataRetriever As Object
Dim returnValue As ChangeBatch

returnValue = instance.GetChangeBatch(batchSize, destinationKnowledge, changeDataRetriever)
public abstract ChangeBatch GetChangeBatch (
    uint batchSize,
    SyncKnowledge destinationKnowledge,
    out Object changeDataRetriever
)
public:
virtual ChangeBatch^ GetChangeBatch (
    unsigned int batchSize, 
    SyncKnowledge^ destinationKnowledge, 
    [OutAttribute] Object^% changeDataRetriever
) abstract
public abstract ChangeBatch GetChangeBatch (
    UInt32 batchSize, 
    SyncKnowledge destinationKnowledge, 
    /** @attribute OutAttribute() */ /** @ref */ Object changeDataRetriever
)
JScript does not support passing value-type arguments by reference.

パラメータ

  • batchSize
    変更バッチに含める変更の数です。
  • destinationKnowledge
    同期先プロバイダからのナレッジです。このナレッジは、変更の列挙で使用する前に、同期元ナレッジに対して MapRemoteKnowledgeToLocal を呼び出すことでマップしておく必要があります。
  • changeDataRetriever
    変更データを取得するために使用できるオブジェクトを返します。これには、IChangeDataRetriever オブジェクトまたはプロバイダ固有のオブジェクトを指定できます。

戻り値

同期先プロバイダからの指定されたナレッジに含まれていない項目に関する、項目メタデータが含まれた変更バッチです。NULL 参照 (Visual Basic では Nothing) です。 は指定できません。

解説

同じ変更は複数のバッチに出現しません。

batchSize で指定された数より少ない数の変更が残った場合、より小さなバッチが返されます。

変更が残っていないときにこのメソッドが呼び出された場合は、InvalidOperationException がスローされます。

実装に関するメモ : このバッチの後で送信する変更がもうない場合は、返される変更バッチで IsLastBatchtrue に設定する必要があります。そうしないと、次の変更バッチを取得するために、Sync Framework によって GetChangeBatch が再度呼び出されます。

参照

リファレンス

KnowledgeSyncProvider クラス
KnowledgeSyncProvider メンバ
Microsoft.Synchronization 名前空間