GetEnumerationAnchor méthode
En cas de substitution dans une classe dérivée, retourne une ancre d'énumération utilisée pour déterminer l'ensemble de modifications à synchroniser pendant une session.
Espace de noms : Microsoft.Synchronization.SimpleProviders
Assembly : Microsoft.Synchronization.SimpleProviders (dans Microsoft.Synchronization.SimpleProviders.dll)
Syntaxe
'Déclaration
Public MustOverride Function GetEnumerationAnchor As Byte()
'Utilisation
Dim instance As AnchorEnumerationSimpleSyncProvider
Dim returnValue As Byte()
returnValue = instance.GetEnumerationAnchor()
public abstract byte[] GetEnumerationAnchor()
public:
virtual array<unsigned char>^ GetEnumerationAnchor() abstract
abstract GetEnumerationAnchor : unit -> byte[]
public abstract function GetEnumerationAnchor() : byte[]
Valeur de retour
Type : array<System. . :: . .Byte> [] () [] []
Tableau d'octets qui représente une ancre d'énumération, telle qu'un horodateur.
Notes
Une ancre est un point dans le temps. L'heure peut être l'heure logique, telle qu'un horodateur ou un autre nombre à croissance monotone, ou il peut s'agir de l'heure de l'horloge. Pendant la première session de synchronisation, la valeur d'ancre est null ; par conséquent, tous les éléments dans le magasin sont énumérés. Pendant les sessions de synchronisation suivantes, la méthode GetEnumerationAnchor est appelée pour fournir une nouvelle valeur d'ancre. Les modifications apportées après la dernière valeur d'ancre et avant la nouvelle valeur d'ancre sont synchronisées. La nouvelle valeur d'ancre est alors stockée par Sync Framework et utilisée en tant que dernière valeur d'ancre pour la session de synchronisation suivante.
Exemples
Les exemples de code suivant affichent une implémentation de la méthode GetEnumerationAnchor pour un exemple d'application qui stocke des éléments dans un magasin en mémoire. La méthode GetAnchor est un exemple de méthode qui retourne une ancre pour le magasin, qui est l'horodateur de la dernière modification apportée à Sync Framework. Pour consulter ce code dans le contexte d'une application complète, consultez l'application "Sync101 using Simple Sync Provider" qui est disponible dans le Kit de développement logiciel (SDK) Sync Framework et de Code Gallery.
Notes
Il s'agit d'une implémentation d'ancre et de suivi des modifications très facile. Dans le cas d'une implémentation de l'ancre de production, vous devez prendre en compte les problèmes d'accès concurrentiel optimiste qui peuvent survenir lorsque l'utilisateur apporte des modifications au magasin pendant une session de synchronisation.
public override byte[] GetEnumerationAnchor()
{
return _store.GetAnchor();
}
public byte[] GetAnchor()
{
//Use the timestamp of the last change as the anchor.
if (_trackedChanges.Count > 0)
{
return BitConverter.GetBytes(_trackedChanges.Keys[_trackedChanges.Count - 1]);
}
else
{
return null;
}
}
Public Overrides Function GetEnumerationAnchor() As Byte()
Return _store.GetAnchor()
End Function
Public Function GetAnchor() As Byte()
'Use the timestamp of the last change as the anchor.
If _trackedChanges.Count > 0 Then
Return BitConverter.GetBytes(_trackedChanges.Keys(_trackedChanges.Count - 1))
Else
Return Nothing
End If
End Function
Voir aussi
Référence
AnchorEnumerationSimpleSyncProvider Classe