Méthode IFilterTrackingNotifyingChangeApplierTarget.SaveKnowledgeWithFilterForgottenKnowledge
En cas de substitution dans une classe dérivée, enregistre la connaissance, la connaissance oubliée et une liste d'objets de connaissance oubliée de filtre.
Espace de noms: Microsoft.Synchronization
Assembly: Microsoft.Synchronization (dans microsoft.synchronization.dll)
Syntaxe
'Déclaration
Sub SaveKnowledgeWithFilterForgottenKnowledge ( _
syncKnowledge As SyncKnowledge, _
forgottenKnowledge As ForgottenKnowledge, _
filterForgottenKnowledge As ForgottenKnowledge() _
)
'Utilisation
Dim instance As IFilterTrackingNotifyingChangeApplierTarget
Dim syncKnowledge As SyncKnowledge
Dim forgottenKnowledge As ForgottenKnowledge
Dim filterForgottenKnowledge As ForgottenKnowledge()
instance.SaveKnowledgeWithFilterForgottenKnowledge(syncKnowledge, forgottenKnowledge, filterForgottenKnowledge)
void SaveKnowledgeWithFilterForgottenKnowledge (
SyncKnowledge syncKnowledge,
ForgottenKnowledge forgottenKnowledge,
ForgottenKnowledge[] filterForgottenKnowledge
)
void SaveKnowledgeWithFilterForgottenKnowledge (
SyncKnowledge^ syncKnowledge,
ForgottenKnowledge^ forgottenKnowledge,
array<ForgottenKnowledge^>^ filterForgottenKnowledge
)
void SaveKnowledgeWithFilterForgottenKnowledge (
SyncKnowledge syncKnowledge,
ForgottenKnowledge forgottenKnowledge,
ForgottenKnowledge[] filterForgottenKnowledge
)
function SaveKnowledgeWithFilterForgottenKnowledge (
syncKnowledge : SyncKnowledge,
forgottenKnowledge : ForgottenKnowledge,
filterForgottenKnowledge : ForgottenKnowledge[]
)
Paramètres
- syncKnowledge
Connaissance mise à jour à enregistrer.
- forgottenKnowledge
Connaissance oubliée à enregistrer. Si ce paramètre a une Null, la connaissance oubliée existante reste inchangée et ne doit pas être remplacée.
- filterForgottenKnowledge
Liste d'objets de connaissance oubliée de filtre à enregistrer. Cette liste est classée par clés de filtre dans le mappage de clés de filtre.
Notes
syncKnowledge doit remplacer la connaissance existante pour l'étendue. Si forgottenKnowledge n'est pas une Null, forgottenKnowledge doit également remplacer la connaissance oubliée de l'étendue ; sinon, la connaissance oubliée existante doit être conservée. Les objets de connaissance oubliée de filtre qui sont contenus dans filterForgottenKnowledge doivent également remplacer les objets de connaissance oubliée de filtre correspondants du réplica. Sync Framework appelle cette méthode une fois par lot de modifications après que toutes les modifications contenues dans le lot de modifications ont été traitées.
Exemple
L'exemple suivant enregistre la liste d'objets de connaissance oubliée de filtre sur le réplica, puis appelle StoreKnowledgeForScope pour enregistrer la connaissance mise à jour et la connaissance oubliée.
Public Sub SaveKnowledgeWithFilterForgottenKnowledge(ByVal syncKnowledge As SyncKnowledge, ByVal forgottenKnowledge As ForgottenKnowledge, ByVal filterForgottenKnowledge As ForgottenKnowledge()) Implements IFilterTrackingNotifyingChangeApplierTarget.SaveKnowledgeWithFilterForgottenKnowledge
' First update the list of filter forgotten knowledge objects.
For iFilter As Integer = 0 To filterForgottenKnowledge.Length - 1
DirectCast(_filterKeyMap(iFilter), AddressFilter).FilterForgottenKnowledge = filterForgottenKnowledge(iFilter)
Next
' Update the list of filters that are stored in the custom replica metadata.
AddressFilter.StoreFiltersInReplicaMetadata(_ContactStore.ContactReplicaMetadata, _ContactStore.TrackedFilters)
' Store the remaining knowledge objects.
StoreKnowledgeForScope(syncKnowledge, forgottenKnowledge)
End Sub
public void SaveKnowledgeWithFilterForgottenKnowledge(SyncKnowledge syncKnowledge, ForgottenKnowledge forgottenKnowledge, ForgottenKnowledge[] filterForgottenKnowledge)
{
// First update the list of filter forgotten knowledge objects.
for (int iFilter = 0; iFilter < filterForgottenKnowledge.Length; iFilter++)
{
((AddressFilter)_filterKeyMap[iFilter]).FilterForgottenKnowledge = filterForgottenKnowledge[iFilter];
}
// Update the list of filters that are stored in the custom replica metadata.
AddressFilter.StoreFiltersInReplicaMetadata(_ContactStore.ContactReplicaMetadata, _ContactStore.TrackedFilters);
// Store the remaining knowledge objects.
StoreKnowledgeForScope(syncKnowledge, forgottenKnowledge);
}
Voir aussi
Référence
Interface IFilterTrackingNotifyingChangeApplierTarget
Membres IFilterTrackingNotifyingChangeApplierTarget
Espace de noms Microsoft.Synchronization