Partager via


Classe CustomFieldDefinition

Représente un champ qui peut être utilisé pour identifier un élément dans le magasin des métadonnées ou pour stocker les informations relatives à la version pour un élément ou une unité de modification.

Espace de noms: Microsoft.Synchronization.SimpleProviders
Assembly: Microsoft.Synchronization.SimpleProviders (dans microsoft.synchronization.simpleproviders.dll)

Syntaxe

'Déclaration
Public Class CustomFieldDefinition
'Utilisation
Dim instance As CustomFieldDefinition
public class CustomFieldDefinition
public ref class CustomFieldDefinition
public class CustomFieldDefinition
public class CustomFieldDefinition

Notes

Les champs personnalisés sont des champs qui sont identifiés par des entiers dans le magasin des métadonnées. Si une application requiert un nom convivial pour un ou plusieurs champs, elle doit mapper l'entier à un nom. Les champs personnalisés sont définis pour deux raisons : identifier les éléments, et indiquer la version de chacun de ces éléments. Les champs version permettent à Sync Framework de déterminer si un élément ou une unité de modification a changé. Pour plus d'informations sur les métadonnées de fournisseurs simples, consultez Gestion des métadonnées pour les fournisseurs simples.

Les champs personnalisés peuvent utiliser les types de données suivants. Pour les types de longueur fixe, utilisez le constructeur CustomFieldDefinition à deux paramètres. Pour les types de longueur variable, utilisez le constructeur CustomFieldDefinitionà trois paramètres.

Type

Constructeur

Byte

CustomFieldDefinition

Byte[]

CustomFieldDefinition

Guid

CustomFieldDefinition

String

CustomFieldDefinition

UInt16

CustomFieldDefinition

UInt32

CustomFieldDefinition

UInt64

CustomFieldDefinition

Exemple

Les exemples de code suivants fournissent la valeur d'entrée de l'objet ItemMetadataSchema. Les constantes dans l'exemple de code définissent une valeur entière pour chaque colonne dans le magasin d'éléments. Ces valeurs sont utilisées lors de la création des définitions de champ personnalisé et des règles d'identité pour l'objet ItemMetadataSchema. 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 const uint CUSTOM_FIELD_ID = 1;
public const uint CUSTOM_FIELD_TIMESTAMP = 2;
public override ItemMetadataSchema MetadataSchema
{
    get
    {
        CustomFieldDefinition[] customFields = new CustomFieldDefinition[2];
        customFields[0] = new CustomFieldDefinition(CUSTOM_FIELD_ID, typeof(ulong));
        customFields[1] = new CustomFieldDefinition(CUSTOM_FIELD_TIMESTAMP, typeof(ulong));

        IdentityRule[] identityRule = new IdentityRule[1];
        identityRule[0] = new IdentityRule(new uint[] { CUSTOM_FIELD_ID });

        return new ItemMetadataSchema(customFields, identityRule);
    }
}
Public Const CUSTOM_FIELD_ID As UInteger = 1
Public Const CUSTOM_FIELD_TIMESTAMP As UInteger = 2
Public Overrides ReadOnly Property MetadataSchema() As ItemMetadataSchema
    Get
        Dim customFields As CustomFieldDefinition() = New CustomFieldDefinition(1) {}
        customFields(0) = New CustomFieldDefinition(CUSTOM_FIELD_ID, GetType(ULong))
        customFields(1) = New CustomFieldDefinition(CUSTOM_FIELD_TIMESTAMP, GetType(ULong))

        Dim identityRule As IdentityRule() = New IdentityRule(0) {}
        identityRule(0) = New IdentityRule(New UInteger() {CUSTOM_FIELD_ID})

        Return New ItemMetadataSchema(customFields, identityRule)
    End Get
End Property

Hiérarchie d'héritage

System.Object
  Microsoft.Synchronization.SimpleProviders.CustomFieldDefinition

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 CustomFieldDefinition
Espace de noms Microsoft.Synchronization.SimpleProviders