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
<DefaultMemberAttribute("Item")> _
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
[DefaultMemberAttribute("Item")]
public class ItemFieldDictionary : IDictionary<uint,ItemField>, ICollection<KeyValuePair<uint,ItemField>>,
IEnumerable<KeyValuePair<uint,ItemField>>, IEnumerable
[DefaultMemberAttribute(L"Item")]
public ref class ItemFieldDictionary : IDictionary<unsigned int, ItemField^>, ICollection<KeyValuePair<unsigned int, ItemField^>>,
IEnumerable<KeyValuePair<unsigned int, ItemField^>>, IEnumerable
/** @attribute DefaultMemberAttribute("Item") */
public class ItemFieldDictionary implements IDictionary<UInt32,ItemField>,
ICollection<KeyValuePair<UInt32,ItemField>>, IEnumerable<KeyValuePair<UInt32,ItemField>>, IEnumerable
DefaultMemberAttribute("Item")
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.
Exemple
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 statiques (Partagés en Visual Basic) de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.
Voir aussi
Référence
Membres ItemFieldDictionary
Espace de noms Microsoft.Synchronization.SimpleProviders