IFilteredSimpleSyncProvider.IsItemInFilterScope Method
When overridden in a derived class, called by the Sync Framework runtime to determine whether an item satisfies the filtering criteria of the provider.
Namespace: Microsoft.Synchronization.SimpleProviders
Assembly: Microsoft.Synchronization.SimpleProviders (in microsoft.synchronization.simpleproviders.dll)
Syntax
'Declaration
Function IsItemInFilterScope ( _
keyAndVersion As ItemFieldDictionary _
) As Boolean
'Usage
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
Parameters
- keyAndVersion
An ItemFieldDictionary object that contains the key and version of the item to be checked.
Return Value
True if the item satisfies the filtering criteria. Otherwise false.
Example
The following code example first specifies a filter option of None. This means that items should be filtered out even if they are already known to the destination. The code example then implements the IsItemInFilterScope method, which filters out items based on one of the item field values. After the filter is defined, the code example implements the UseFilterThisSession method. This enables an application to specify whether filtering should be used on a per-session basis.
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
See Also
Reference
IFilteredSimpleSyncProvider Interface
IFilteredSimpleSyncProvider Members
Microsoft.Synchronization.SimpleProviders Namespace