Compartilhar via


Método ReplicaMetadata.CreateItemMetadata

Quando substituído em uma classe derivada, cria um novo objeto de metadados do item que pode ser usado para adicionar uma nova entrada de metadados do item ao repositório de metadados.

Namespace: Microsoft.Synchronization.MetadataStorage
Assembly: Microsoft.Synchronization.MetadataStorage (em microsoft.synchronization.metadatastorage.dll)

Sintaxe

'Declaração
Public MustOverride Function CreateItemMetadata ( _
    globalId As SyncId, _
    creationVersion As SyncVersion _
) As ItemMetadata
'Uso
Dim instance As ReplicaMetadata
Dim globalId As SyncId
Dim creationVersion As SyncVersion
Dim returnValue As ItemMetadata

returnValue = instance.CreateItemMetadata(globalId, creationVersion)
public abstract ItemMetadata CreateItemMetadata (
    SyncId globalId,
    SyncVersion creationVersion
)
public:
virtual ItemMetadata^ CreateItemMetadata (
    SyncId^ globalId, 
    SyncVersion^ creationVersion
) abstract
public abstract ItemMetadata CreateItemMetadata (
    SyncId globalId, 
    SyncVersion creationVersion
)
public abstract function CreateItemMetadata (
    globalId : SyncId, 
    creationVersion : SyncVersion
) : ItemMetadata

Parâmetros

  • globalId
    A ID global do item a ser criado. A ID global deve ser exclusiva.
  • creationVersion
    A versão de criação a ser associada a este item.

Valor de retorno

O objeto de metadados do item recém-criado.

Exceções

Tipo de exceção Condição

ObjectDisposedException

O objeto foi descartado ou não foi inicializado corretamente.

ArgumentNullException

globalId ou creationVersion é um referência nula (Nothing no Visual Basic).

OutOfMemoryException

Não há memória suficiente para criar os metadados do item.

SyncIdFormatMismatchException

O formato de globalId não corresponde ao formato especificado quando os metadados da réplica foram inicializados.

Comentários

Os metadados do item não são salvos no repositório de metadados até que SaveItemMetadata seja chamado.

Exemplo

O exemplo a seguir cria metadados para um item, define a versão de unidade de alteração para cada unidade de alteração no item e define os valores de campos personalizados para os campos de índice do item.

private ItemMetadata CreateContactMetadata(Contact contact, SyncId itemId, SyncVersion creationVersion,
    SyncVersion changeVersion)
{
    // Create the item by using the metadata storage service.
    ItemMetadata itemMeta = _ContactReplicaMetadata.CreateItemMetadata(itemId, creationVersion);

    // Set the version information for each change unit.
    itemMeta.SetChangeUnitVersion(new SyncId((byte)Contact.ChangeUnitFields.NameCU), changeVersion);
    itemMeta.SetChangeUnitVersion(new SyncId((byte)Contact.ChangeUnitFields.PhoneCU), changeVersion);
    itemMeta.SetChangeUnitVersion(new SyncId((byte)Contact.ChangeUnitFields.AddressCU), changeVersion);
    itemMeta.SetChangeUnitVersion(new SyncId((byte)Contact.ChangeUnitFields.BirthdateCU), changeVersion);

    // A unique index is defined for the combination of first name, last name, and phone number in order
    // to map between the item ID and the contact.
    // Set the field values for the index fields.
    itemMeta.SetCustomField(FirstNameField, contact.FirstName);
    itemMeta.SetCustomField(LastNameField, contact.LastName);
    itemMeta.SetCustomField(PhoneNumberField, contact.PhoneNumber);

    return itemMeta;
}

Consulte também

Referência

Classe ReplicaMetadata
Membros ReplicaMetadata
Namespace Microsoft.Synchronization.MetadataStorage