Поделиться через


Метод ItemEnumerationContext.SetDeleteMode

Устанавливает, является операция удаления нормальным удалением, которое распространяется на другие реплики, или только локальным удалением.

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

Синтаксис

'Декларация
Public Overridable Sub SetDeleteMode ( _
    deleteMode As SimpleSyncProviderDeleteMode _
)
'Применение
Dim instance As ItemEnumerationContext
Dim deleteMode As SimpleSyncProviderDeleteMode

instance.SetDeleteMode(deleteMode)
public virtual void SetDeleteMode (
    SimpleSyncProviderDeleteMode deleteMode
)
public:
virtual void SetDeleteMode (
    SimpleSyncProviderDeleteMode deleteMode
)
public void SetDeleteMode (
    SimpleSyncProviderDeleteMode deleteMode
)
public function SetDeleteMode (
    deleteMode : SimpleSyncProviderDeleteMode
)

Параметры

  • deleteMode
    Значение перечисления SimpleSyncProviderDeleteMode определяет, является ли операция удаления нормальным удалением, которое распространяется на другие реплики, или только локальным удалением.

Замечания

В некоторых сценариях синхронизации требуется возможность удалять элемент в локальной реплике, не распространяя это удаление на другие реплики. Например, сервер может синхронизироваться с несколькими устройствами, хранящими данные для различных продавцов. Объем места на каждом устройстве ограничен, и поэтому продавцы удаляют старые выполненные заказы. Такие операции удаления не должны передаваться на сервер, поскольку на сервере необходимо хранить эти данные. Простые поставщики позволяют указать, что данные нужно удалять только локально. Для управления обработкой операций удаления для каждого сеанса, задайте нужный параметр с помощью этого метода.

Пример

В следующем примере кода показано, что операции удаления не должны распространяться во время синхронизации.

public override void EnumerateItems(FullEnumerationContext context)
{

    context.SetDeleteMode(SimpleSyncProviderDeleteMode.LocalOnly);

    List<ItemFieldDictionary> items = new List<ItemFieldDictionary>();
    foreach (ulong id in _store.Ids)
    {
        items.Add(_store.CreateItemFieldDictionary(id));
    }
    context.ReportItems(items);
}
public override void EnumerateItems(FullEnumerationContext context) 
{ 

context.SetDeleteMode(SimpleSyncProviderDeleteMode.LocalOnly); 

List<ItemFieldDictionary> items = new List<ItemFieldDictionary>(); 
foreach (ulong id in _store.Ids) 
{ 
items.Add(_store.CreateItemFieldDictionary(id)); 
} 
context.ReportItems(items); 
} 

См. также

Справочник

Класс ItemEnumerationContext
Элементы ItemEnumerationContext
Пространство имен Microsoft.Synchronization.SimpleProviders