Classe CustomFieldDefinition

Representa um campo que pode ser usado para identificar um item no repositório de metadados ou para armazenar informações relacionadas à versão de um item ou de uma unidade de alteração.

Namespace: Microsoft.Synchronization.SimpleProviders
Assembly: Microsoft.Synchronization.SimpleProviders (em microsoft.synchronization.simpleproviders.dll)

Sintaxe

'Declaração
Public Class CustomFieldDefinition
'Uso
Dim instance As CustomFieldDefinition
public class CustomFieldDefinition
public ref class CustomFieldDefinition
public class CustomFieldDefinition
public class CustomFieldDefinition

Comentários

Os campos personalizados são campos no repositório de metadados identificados por inteiros. Se um aplicativo exigir um nome amigável para um ou mais campos, ele deve mapear o inteiro para um nome. Os campos personalizados são definidos por dois motivos: para identificar itens e para fornecer informações de versão sobre esses itens. Os campos de versão habilitam o Sync Framework a determinar se um item ou uma unidade de alteração foi alterada. Para obter mais informações sobre metadados de provedores simples, consulte Gerenciando metadados para provedores simples.

Os campos personalizados podem ser dos tipos de dados a seguir. Para tipos de comprimento fixo, use o construtor CustomFieldDefinition de dois parâmetros. Para tipos de comprimento variável, use o construtor CustomFieldDefinition de três parâmetros.

Tipo

Construtor

Byte

CustomFieldDefinition

Byte[]

CustomFieldDefinition

Guid

CustomFieldDefinition

String

CustomFieldDefinition

UInt16

CustomFieldDefinition

UInt32

CustomFieldDefinition

UInt64

CustomFieldDefinition

Exemplo

Os exemplos de códigos a seguir fornecem a entrada para o objeto ItemMetadataSchema. As constantes no código de exemplo definem um valor inteiro para cada coluna no repositório de itens. Esses valores são usados na criação das definições do campo personalizado e das regras de identidade para o objeto ItemMetadataSchema. Para exibir esse código no contexto de um aplicativo completo, consulte o aplicativo "Sync101 using Simple Sync Provider" disponível no Sync Framework SDK e em 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

Hierarquia de herança

System.Object
  Microsoft.Synchronization.SimpleProviders.CustomFieldDefinition

Segurança de thread

Qualquer membro estático público (Compartilhado no Visual Basic) deste tipo é protegido por thread. Não há garantia de que qualquer membro de instância esteja protegido por thread.

Consulte também

Referência

Membros CustomFieldDefinition
Namespace Microsoft.Synchronization.SimpleProviders