Metodo IFilteredReplicaNotifyingChangeApplierTarget.GetNewMoveInItems
Ottiene un elenco di ID elemento che identificano gli elementi che si trovano nel filtro e che non sono contenuti nella conoscenza specificata.
Spazio dei nomi: Microsoft.Synchronization
Assembly: Microsoft.Synchronization (in microsoft.synchronization.dll)
Sintassi
'Dichiarazione
Function GetNewMoveInItems ( _
baseKnowledge As SyncKnowledge _
) As IEnumerator(Of SyncId)
'Utilizzo
Dim instance As IFilteredReplicaNotifyingChangeApplierTarget
Dim baseKnowledge As SyncKnowledge
Dim returnValue As IEnumerator(Of SyncId)
returnValue = instance.GetNewMoveInItems(baseKnowledge)
IEnumerator<SyncId> GetNewMoveInItems (
SyncKnowledge baseKnowledge
)
IEnumerator<SyncId^>^ GetNewMoveInItems (
SyncKnowledge^ baseKnowledge
)
IEnumerator<SyncId> GetNewMoveInItems (
SyncKnowledge baseKnowledge
)
function GetNewMoveInItems (
baseKnowledge : SyncKnowledge
) : IEnumerator<SyncId>
Parametri
- baseKnowledge
L'elenco di ID elemento restituito identifica gli elementi che si trovano nel filtro e che non sono contenuti in questa conoscenza.
Valore restituito
Elenco di ID elemento che identifica gli elementi che si trovano nel filtro e che non sono contenuti in baseKnowledge.
Osservazioni
Questo metodo viene utilizzato dall'oggetto di applicazione modifiche per determinare gli elementi che sono stati spostati nel filtro dopo la registrazione della conoscenza specificata da baseKnowledge. Ad esempio, una replica che archivia file multimediali viene filtrata affinché archivi solo i dati dei file valutati con almeno tre stelle. Un file è valutato con due stelle quando viene registrato baseKnowledge. L'utente modifica la valutazione del file scegliendo quattro stelle. Il file è stato spostato nel filtro e deve essere incluso nell'elenco restituito da questo metodo.
Esempio
Nell'esempio seguente vengono enumerati tutti gli elementi nell'archivio dei metadati. Un elemento viene aggiunto all'elenco di nuovi elementi trasferiti quando l'elemento si trova nel filtro utilizzato per la sincronizzazione e la versione di trasferimento dell'elemento in relazione al filtro non è contenuta nella conoscenza di base specificata.
Public Function GetNewMoveInItems(ByVal baseKnowledge As SyncKnowledge) As IEnumerator(Of SyncId) Implements IFilteredReplicaNotifyingChangeApplierTarget.GetNewMoveInItems
Dim newMoveInIdList As New List(Of SyncId)()
Dim allItems As IEnumerable(Of ItemMetadata) = _ContactStore.ContactReplicaMetadata.GetAllItems(False)
Dim mappedBaseKnowledge As SyncKnowledge = _ContactStore.ContactReplicaMetadata.GetKnowledge().MapRemoteKnowledgeToLocal(baseKnowledge)
For Each itemMeta As ItemMetadata In allItems
Dim filterChange As FilterChange = _ContactStore.GetTrackedFilterMetadata(itemMeta, _filterForSync)
If filterChange.IsMoveIn Then
If Not mappedBaseKnowledge.Contains(_ContactStore.ContactReplicaMetadata.ReplicaId, itemMeta.GlobalId, filterChange.MoveVersion) Then
newMoveInIdList.Add(itemMeta.GlobalId)
End If
End If
Next
Return newMoveInIdList.GetEnumerator()
End Function
public IEnumerator<SyncId> GetNewMoveInItems(SyncKnowledge baseKnowledge)
{
List<SyncId> newMoveInIdList = new List<SyncId>();
IEnumerable<ItemMetadata> allItems = _ContactStore.ContactReplicaMetadata.GetAllItems(false);
SyncKnowledge mappedBaseKnowledge = _ContactStore.ContactReplicaMetadata.GetKnowledge().MapRemoteKnowledgeToLocal(baseKnowledge);
foreach (ItemMetadata itemMeta in allItems)
{
FilterChange filterChange = _ContactStore.GetTrackedFilterMetadata(itemMeta, _filterForSync);
if (filterChange.IsMoveIn)
{
if (!mappedBaseKnowledge.Contains(_ContactStore.ContactReplicaMetadata.ReplicaId, itemMeta.GlobalId, filterChange.MoveVersion))
{
newMoveInIdList.Add(itemMeta.GlobalId);
}
}
}
return newMoveInIdList.GetEnumerator();
}
Vedere anche
Riferimento
Interfaccia IFilteredReplicaNotifyingChangeApplierTarget
Membri IFilteredReplicaNotifyingChangeApplierTarget
Spazio dei nomi Microsoft.Synchronization