ItemField Class
Represents the way in which an item is identified when changes are applied to a destination.
Namespace: Microsoft.Synchronization.SimpleProviders
Assembly: Microsoft.Synchronization.SimpleProviders (in microsoft.synchronization.simpleproviders.dll)
Syntax
'Declaration
Public Class ItemField
'Usage
Dim instance As ItemField
public class ItemField
public ref class ItemField
public class ItemField
public class ItemField
Example
The following code examples show an implementation of the EnumerateItems method for a sample application that stores items in an in-memory store. The CreateItemFieldDictionary
method is a sample method that creates and returns an ItemFieldDictionary object for each item in the store. To view this code in the context of a complete application, see the "Sync101 using Simple Sync Provider"
application that is available in the Sync Framework SDK and from 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
Inheritance Hierarchy
System.Object
Microsoft.Synchronization.SimpleProviders.ItemField
Thread Safety
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
See Also
Reference
ItemField Members
Microsoft.Synchronization.SimpleProviders Namespace