IFilteredSimpleSyncProvider.IsItemInFilterScope Método

Cuando se invalida en una clase derivada, el tiempo de ejecución de Sync Framework lo llama para determinar si un elemento satisface los criterios de filtrado del proveedor.

Espacio de nombres: Microsoft.Synchronization.SimpleProviders
Ensamblado: Microsoft.Synchronization.SimpleProviders (en microsoft.synchronization.simpleproviders.dll)

Sintaxis

'Declaración
Function IsItemInFilterScope ( _
    keyAndVersion As ItemFieldDictionary _
) As Boolean
'Uso
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

Parámetros

  • keyAndVersion
    Objeto ItemFieldDictionary que contiene la clave y la versión del elemento que se va a comprobar.

Valor devuelto

True si el elemento satisface los criterios de filtrado. En caso contrario, false.

Ejemplo

En el ejemplo de código siguiente primero se especifica una opción de filtro de None. Esto significa que los elementos deben filtrarse aun cuando ya se conozcan en el destino. En el ejemplo de código se implementa a continuación el método IsItemInFilterScope, que filtra los elementos en función de uno de los valores de campo de elemento. Una vez definido el filtro, en el ejemplo de código se implementa el método UseFilterThisSession. De este modo, la aplicación puede especificar si los filtros deben utilizarse en cada sesión.

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

Vea también

Referencia

IFilteredSimpleSyncProvider Interfaz
IFilteredSimpleSyncProvider Miembros
Microsoft.Synchronization.SimpleProviders Espacio de nombres