다음을 통해 공유


IFilteredSimpleSyncProvider.IsItemInFilterScope 메서드

파생 클래스에서 재정의되면 Sync Framework Runtime에서 호출되어 항목이 공급자의 필터링 조건을 충족하는지 여부를 확인합니다.

네임스페이스: Microsoft.Synchronization.SimpleProviders
어셈블리: microsoft.synchronization.simpleproviders.dll의 Microsoft.Synchronization.SimpleProviders

구문

‘선언
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
)
boolean IsItemInFilterScope (
    ItemFieldDictionary keyAndVersion
)
function IsItemInFilterScope (
    keyAndVersion : ItemFieldDictionary
) : boolean

매개 변수

  • keyAndVersion
    확인할 항목의 버전과 키가 포함된 ItemFieldDictionary 개체입니다.

반환 값

항목이 필터링 조건을 충족하면 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 네임스페이스