Classe ItemFieldDictionary
Représente un élément et ses champs associés.
Espace de noms : Microsoft.Synchronization.SimpleProviders
Assembly : Microsoft.Synchronization.SimpleProviders (dans Microsoft.Synchronization.SimpleProviders.dll)
Syntaxe
'Déclaration
Public Class ItemFieldDictionary _
Implements IDictionary(Of UInteger, ItemField), _
ICollection(Of KeyValuePair(Of UInteger, ItemField)), IEnumerable(Of KeyValuePair(Of UInteger, ItemField)), _
IEnumerable
'Utilisation
Dim instance As ItemFieldDictionary
public class ItemFieldDictionary : IDictionary<uint, ItemField>,
ICollection<KeyValuePair<uint, ItemField>>, IEnumerable<KeyValuePair<uint, ItemField>>,
IEnumerable
public ref class ItemFieldDictionary : IDictionary<unsigned int, ItemField^>,
ICollection<KeyValuePair<unsigned int, ItemField^>>, IEnumerable<KeyValuePair<unsigned int, ItemField^>>,
IEnumerable
type ItemFieldDictionary =
class
interface IDictionary<uint32, ItemField>
interface ICollection<KeyValuePair<uint32, ItemField>>
interface IEnumerable<KeyValuePair<uint32, ItemField>>
interface IEnumerable
end
public class ItemFieldDictionary implements IDictionary<uint, ItemField>, ICollection<KeyValuePair<uint, ItemField>>, IEnumerable<KeyValuePair<uint, ItemField>>, IEnumerable
Notes
Les objets ItemFieldDictionary sont utilisés par de nombreuses méthodes de fournisseurs simples pour stocker et passer les objets ItemField qui identifient des éléments lorsque les modifications sont appliquées à une destination.
Exemples
Les exemples de code suivant affichent une implémentation de la méthode EnumerateItems pour un exemple d'application qui stocke des éléments dans un magasin en mémoire. La méthode CreateItemFieldDictionary est un exemple de méthode qui crée et retourne un objet ItemFieldDictionary pour chaque élément dans le magasin. 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.
public override void EnumerateItems(FullEnumerationContext context)
{
List<ItemFieldDictionary> items = new List<ItemFieldDictionary>();
foreach (ulong id in _store.Ids)
{
items.Add(_store.CreateItemFieldDictionary(id));
}
context.ReportItems(items);
}
public ItemFieldDictionary CreateItemFieldDictionary(ulong id)
{
ItemFieldDictionary itemFields = null;
if (_store.ContainsKey(id))
{
itemFields = new ItemFieldDictionary();
itemFields.Add(new ItemField(MyFullEnumerationSimpleSyncProvider.CUSTOM_FIELD_ID, typeof(ulong), id));
itemFields.Add(new ItemField(MyFullEnumerationSimpleSyncProvider.CUSTOM_FIELD_TIMESTAMP, typeof(ulong), _store[id].TimeStamp));
}
else
{
throw new Exception("Item does not exist in store");
}
return itemFields;
}
Public Overrides Sub EnumerateItems(ByVal context As FullEnumerationContext)
Dim items As New List(Of ItemFieldDictionary)()
For Each id As ULong In _store.Ids
items.Add(_store.CreateItemFieldDictionary(id))
Next
context.ReportItems(items)
End Sub
Public Function CreateItemFieldDictionary(ByVal id As ULong) As ItemFieldDictionary
Dim itemFields As ItemFieldDictionary = Nothing
If _store.ContainsKey(id) Then
itemFields = New ItemFieldDictionary()
itemFields.Add(New ItemField(MyFullEnumerationSimpleSyncProvider.CUSTOM_FIELD_ID, GetType(ULong), id))
itemFields.Add(New ItemField(MyFullEnumerationSimpleSyncProvider.CUSTOM_FIELD_TIMESTAMP, GetType(ULong), _store(id).TimeStamp))
Else
Throw New Exception("Item does not exist in store")
End If
Return itemFields
End Function
Hiérarchie d'héritage
System. . :: . .Object
Microsoft.Synchronization.SimpleProviders..::..ItemFieldDictionary
Sécurité des threads
Tous les membres publics static (Shared dans Visual Basic) de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.