SimpleSyncProviderFilterOptions Enumeración
Representa las opciones disponibles para la sincronización filtrada.
Espacio de nombres: Microsoft.Synchronization.SimpleProviders
Ensamblado: Microsoft.Synchronization.SimpleProviders (en microsoft.synchronization.simpleproviders.dll)
Sintaxis
'Declaración
<FlagsAttribute> _
Public Enumeration SimpleSyncProviderFilterOptions
'Uso
Dim instance As SimpleSyncProviderFilterOptions
[FlagsAttribute]
public enum SimpleSyncProviderFilterOptions
[FlagsAttribute]
public enum class SimpleSyncProviderFilterOptions
/** @attribute FlagsAttribute() */
public enum SimpleSyncProviderFilterOptions
FlagsAttribute
public enum SimpleSyncProviderFilterOptions
Miembros
Nombre del miembro | Descripción | |
---|---|---|
AlwaysIncludeItemsKnownToDestination | Se propagan al destino todos los elementos que éste conoce, aunque no cumplan el filtro. | |
None | Solo se propagan al destino los elementos que cumplen el filtro. |
Notas
En algunas situaciones, la réplica de destino solamente necesita un subconjunto de los datos que están disponibles en la réplica de origen. Por ejemplo, un vendedor podría necesitar información detallada solamente de los productos que vende habitualmente. Los proveedores simples permiten que las réplicas filtren los datos implementando IFilteredSimpleSyncProvider. Para obtener más información, vea Filtrar datos de proveedores simples.
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
Microsoft.Synchronization.SimpleProviders Espacio de nombres