Метод IFilterTrackingNotifyingChangeApplierTarget.SaveKnowledgeWithFilterForgottenKnowledge

При переопределении в производном классе сохраняет набор знаний, утраченный набор знаний и список объектов утраченного набора знаний фильтра.

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

Синтаксис

'Декларация
Sub SaveKnowledgeWithFilterForgottenKnowledge ( _
    syncKnowledge As SyncKnowledge, _
    forgottenKnowledge As ForgottenKnowledge, _
    filterForgottenKnowledge As ForgottenKnowledge() _
)
'Применение
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[]
)

Параметры

  • syncKnowledge
    Обновленный набор знаний, подлежащий сохранению.
  • forgottenKnowledge
    Утраченный набор знаний, подлежащий сохранению. Если этот параметр имеет значение пустая ссылка (Nothing в Visual Basic), то существующий утраченный набор знаний не будет заменен, а останется без изменений.
  • filterForgottenKnowledge
    Список объектов утраченных наборов знаний фильтров для сохранения. Этот список упорядочивается ключами фильтра из схемы ключей фильтра.

Замечания

Существующий набор знаний должен быть заменен параметром syncKnowledge в пределах области. Если параметр forgottenKnowledge не равен пустая ссылка (Nothing в Visual Basic), то набор знаний, указанный параметром forgottenKnowledge, должен также заменить утраченный набор знаний для конкретной области. В противном случае будет сохранен существующий утраченный набор знаний. Объекты утраченного набора знаний фильтра, содержащиеся в filterForgottenKnowledge, также должны замещать соответствующие объекты утраченного набора знаний фильтра в реплике. Этот метод платформа Sync Framework вызывает один раз для каждого пакета изменений после обработки всех изменений в пакете.

Пример

В следующем примере показано сохранение списка объектов утраченного набора знаний фильтра в реплике и последующий вызов метода StoreKnowledgeForScope для сохранения обновленного набора знаний и утраченного набора знаний.

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);
}

См. также

Справочник

Интерфейс IFilterTrackingNotifyingChangeApplierTarget
Элементы IFilterTrackingNotifyingChangeApplierTarget
Пространство имен Microsoft.Synchronization