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


Метод IsItemInFilterScope

При переопределении в производном классе вызывается средой выполнения Sync Framework, чтобы определить, удовлетворяет ли элемент условию фильтрации поставщика.

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

Синтаксис

'Декларация
Function IsItemInFilterScope ( _
    keyAndVersion As ItemFieldDictionary _
) As Boolean
'Применение
Dim instance As IFilteredSimpleSyncProvider
Dim keyAndVersion As ItemFieldDictionary
Dim returnValue As Boolean

returnValue = instance.IsItemInFilterScope(keyAndVersion)
bool IsItemInFilterScope(
    ItemFieldDictionary keyAndVersion
)
bool IsItemInFilterScope(
    ItemFieldDictionary^ keyAndVersion
)
abstract IsItemInFilterScope : 
        keyAndVersion:ItemFieldDictionary -> bool 
function IsItemInFilterScope(
    keyAndVersion : ItemFieldDictionary
) : boolean

Параметры

Возвращаемое значение

Тип System. . :: . .Boolean
Значение true, если элемент удовлетворяет условию фильтрации. В противном случае значение false.

Примеры

В следующем примере кода вначале определяется параметр фильтрации None. Это означает, что элементы должны быть отфильтрованы, даже если уже известны в месте назначения. Затем в этом примере кода реализуется метод IsItemInFilterScope, который фильтрует элементы по значению одного из их полей. После определения фильтра в этом примере кода реализуется метод UseFilterThisSession. Это позволяет приложению указать, должна ли осуществляться фильтрация на уровне сеанса.

SimpleSyncProviderFilterOptions IFilteredSimpleSyncProvider.FilterOptions
{
    get
    {
        return SimpleSyncProviderFilterOptions.None;
    }
}

bool IFilteredSimpleSyncProvider.IsItemInFilterScope(ItemFieldDictionary KeyAndVersion)
{
    ulong itemId = (ulong)KeyAndVersion[1].Value;
    ItemData itemData = _store.Get(itemId);
    if (itemData["data"] == "3333")
    {
        return false;
    }

    return true;
}

bool IFilteredSimpleSyncProvider.UseFilterThisSession
{
    get
    {
        // Indicate whether a filter has been requested and agreed upon for this session.
        return ("" != _filter);
    }
}
Private ReadOnly Property FilterOptions() As SimpleSyncProviderFilterOptions Implements IFilteredSimpleSyncProvider.FilterOptions
    Get
        Return SimpleSyncProviderFilterOptions.None
    End Get
End Property

Private Function IsItemInFilterScope(ByVal KeyAndVersion As ItemFieldDictionary) As Boolean Implements IFilteredSimpleSyncProvider.IsItemInFilterScope
    Dim itemId As ULong = KeyAndVersion(1).Value
    Dim data As ItemData = _store.Get(itemId)
    If data("data") Is "3333" Then
        Return False
    End If

    Return True
End Function

Private ReadOnly Property UseFilterThisSession() As Boolean Implements IFilteredSimpleSyncProvider.UseFilterThisSession
    Get
        ' Indicate whether a filter has been requested and agreed upon for this session.
        Return "" Is _filter
    End Get
End Property

См. также

Справочник

IFilteredSimpleSyncProvider Интерфейс

Элементы IFilteredSimpleSyncProvider

Пространство имен Microsoft.Synchronization.SimpleProviders