Метод 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