KnowledgeSyncProvider.IdFormats Property

When overridden in a derived class, gets the ID format schema of the provider.

Namespace:  Microsoft.Synchronization
Assembly:  Microsoft.Synchronization (in Microsoft.Synchronization.dll)

Syntax

'Declaration
Public MustOverride ReadOnly Property IdFormats As SyncIdFormatGroup
    Get
'Usage
Dim instance As KnowledgeSyncProvider
Dim value As SyncIdFormatGroup

value = instance.IdFormats
public abstract SyncIdFormatGroup IdFormats { get; }
public:
virtual property SyncIdFormatGroup^ IdFormats {
    SyncIdFormatGroup^ get () abstract;
}
abstract IdFormats : SyncIdFormatGroup
abstract function get IdFormats () : SyncIdFormatGroup

Property Value

Type: Microsoft.Synchronization.SyncIdFormatGroup
The ID format schema of the provider.

Examples

The following example returns the ID format schema of a provider that uses change units.

// Gets the ID format schema that is defined for this replica.
public override SyncIdFormatGroup IdFormats
{
    get 
    {
        SyncIdFormatGroup FormatGroup = new SyncIdFormatGroup();

        // Change unit IDs are an enumeration, so they are fixed length and contain one byte.
        FormatGroup.ChangeUnitIdFormat.IsVariableLength = false;
        FormatGroup.ChangeUnitIdFormat.Length = sizeof(byte);

        // Item IDs are of SyncGlobalId type, so they are fixed length and contain a ulong prefix plus a Guid.
        FormatGroup.ItemIdFormat.IsVariableLength = false;
        FormatGroup.ItemIdFormat.Length = (ushort)(sizeof(ulong) + Marshal.SizeOf(typeof(Guid)));

        // Replica IDs are the absolute path to the item store, so they are variable length with maximum
        // length equal to the maximum length of a path.
        FormatGroup.ReplicaIdFormat.IsVariableLength = true;
        FormatGroup.ReplicaIdFormat.Length = 260 * sizeof(char);

        return FormatGroup;
    }
}

See Also

Reference

KnowledgeSyncProvider Class

Microsoft.Synchronization Namespace