Partager via


Méthode ReplicaMetadata.FindItemMetadataByUniqueIndexedFields

En cas de substitution dans une classe dérivée, retourne l'entrée des métadonnées de l'élément unique qui a les valeurs spécifiées pour les champs indexés.

Espace de noms: Microsoft.Synchronization.MetadataStorage
Assembly: Microsoft.Synchronization.MetadataStorage (dans microsoft.synchronization.metadatastorage.dll)

Syntaxe

'Déclaration
Public MustOverride Function FindItemMetadataByUniqueIndexedFields ( _
    fields As IEnumerable(Of KeyValuePair(Of String, Object)) _
) As ItemMetadata
'Utilisation
Dim instance As ReplicaMetadata
Dim fields As IEnumerable(Of KeyValuePair(Of String, Object))
Dim returnValue As ItemMetadata

returnValue = instance.FindItemMetadataByUniqueIndexedFields(fields)
public abstract ItemMetadata FindItemMetadataByUniqueIndexedFields (
    IEnumerable<KeyValuePair<string,Object>> fields
)
public:
virtual ItemMetadata^ FindItemMetadataByUniqueIndexedFields (
    IEnumerable<KeyValuePair<String^, Object^>>^ fields
) abstract
public abstract ItemMetadata FindItemMetadataByUniqueIndexedFields (
    IEnumerable<KeyValuePair<String,Object>> fields
)
public abstract function FindItemMetadataByUniqueIndexedFields (
    fields : IEnumerable<KeyValuePair<String,Object>>
) : ItemMetadata

Paramètres

  • fields
    Jeu de champs indexés uniques qui identifie l'élément devant faire l'objet d'une recherche. Les champs doivent être des champs valides et représenter un index unique. Ces champs doivent être dans le même ordre que celui utilisé pour spécifier l'index lorsque InitializeReplicaMetadata a été appelée.

Valeur de retour

L'entrée de métadonnées de l'élément unique qui a les valeurs spécifiées pour les champs indexés. Une référence nulle (Rien dans Visual Basic) est retournée lorsque aucun élément n'existe.

Exceptions

Type d'exception Condition

ObjectDisposedException

L'objet a été supprimé ou n'a pas été initialisé correctement.

ArgumentNullException

fields est une référence nulle (Rien dans Visual Basic), ou tout nom ou valeur dans fields est une référence nulle (Rien dans Visual Basic).

ArgumentException

Un nom de champ dans fields est de longueur 0, ou une valeur de type chaîne dans fields est de longueur 0.

NotSupportedException

Un champ dans fields est d'un type non pris en charge.

MetadataFieldNotFoundException

fieldName est introuvable ou n'est pas valide.

MetadataStoreInvalidOperationException

Le champ spécifié n'est pas un index unique.

Notes

Les champs personnalisés doivent être établis lorsque les métadonnées de réplica sont initialisées la première fois en passant FieldSchema à la méthode InitializeReplicaMetadata.

Les champs d'index doivent être établis et marqués comme étant uniques lorsque les métadonnées de réplica sont initialisées pour la première fois en passant IndexSchema à la méthode InitializeReplicaMetadata.

Exemple

L'exemple suivant crée une liste de paires de valeur et de nom de champ d'index, et l'utilise en tant qu'index unique pour rechercher un élément dans le magasin des métadonnées :

private ItemMetadata FindMetadata(Contact contact)
{
    // Try to find the item by using the unique index field values of the contact. These values are
    // the first name, last name, and phone number of the contact.
    List<KeyValuePair<string, object>> fields = new List<KeyValuePair<string, object>>();
    fields.Add(new KeyValuePair<string, object>(FirstNameField, contact.FirstName));
    fields.Add(new KeyValuePair<string, object>(LastNameField, contact.LastName));
    fields.Add(new KeyValuePair<string, object>(PhoneNumberField, contact.PhoneNumber));
    return _ContactReplicaMetadata.FindItemMetadataByUniqueIndexedFields(fields);
}

Voir aussi

Référence

Classe ReplicaMetadata
Membres ReplicaMetadata
Espace de noms Microsoft.Synchronization.MetadataStorage