Compartir a través de


ReplicaMetadata.FindItemMetadataByUniqueIndexedFields Método

Cuando se invalida en una clase derivada, devuelve la entrada de metadatos de elementos única que tiene los valores especificados para los campos indizados.

Espacio de nombres: Microsoft.Synchronization.MetadataStorage
Ensamblado: Microsoft.Synchronization.MetadataStorage (en microsoft.synchronization.metadatastorage.dll)

Sintaxis

'Declaración
Public MustOverride Function FindItemMetadataByUniqueIndexedFields ( _
    fields As IEnumerable(Of KeyValuePair(Of String, Object)) _
) As ItemMetadata
'Uso
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

Parámetros

  • fields
    Conjunto de campos indizados únicos que identifica el elemento que hay que buscar. Los campos deben ser campos válidos y representar un índice único. Estos campos deben estar en el mismo orden que el usado para especificar el índice cuando se llamó a InitializeReplicaMetadata.

Valor devuelto

Entrada de metadatos de elementos única que tiene los valores especificados para los campos indizados. Se devuelve un valor NULL cuando no existe ningún elemento.

Excepciones

Tipo de excepción Condición

ObjectDisposedException

El objeto se ha eliminado o no se ha inicializado correctamente.

ArgumentNullException

fields es un valor es una referencia nula (Nothing en Visual Basic)., o algún nombre o valor de fields es un valor es una referencia nula (Nothing en Visual Basic)..

ArgumentException

Un nombre de campo de fields tiene longitud 0 o un valor de tipo cadena de fields tiene longitud 0.

NotSupportedException

Un campo de fields es de un tipo no compatible.

MetadataFieldNotFoundException

fieldName no se ha encontrado o no es válido.

MetadataStoreInvalidOperationException

El campo especificado no es un índice único.

Notas

Los campos personalizados se deben establecer cuando se inicializan los metadatos de la réplica por primera vez pasando FieldSchema a InitializeReplicaMetadata.

Los campos indizados se deben establecer y marcar como únicos cuando se inicializan los metadatos de la réplica por primera vez pasando IndexSchema a InitializeReplicaMetadata.

Ejemplo

En el ejemplo siguiente se crea una lista de pares de valor y nombre de campo de índice, y se utiliza la lista como índice único para buscar un elemento en el almacén de metadatos:

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);
}

Vea también

Referencia

ReplicaMetadata Clase
ReplicaMetadata Miembros
Microsoft.Synchronization.MetadataStorage Espacio de nombres