Класс CustomFieldDefinition

Представляет поле, которое может быть использовано для идентификации элемента в хранилище метаданных или для хранения сведений о версии элемента или базовой единицы.

Пространство имен: Microsoft.Synchronization.SimpleProviders
Сборка: Microsoft.Synchronization.SimpleProviders (в microsoft.synchronization.simpleproviders.dll)

Синтаксис

'Декларация
Public Class CustomFieldDefinition
'Применение
Dim instance As CustomFieldDefinition
public class CustomFieldDefinition
public ref class CustomFieldDefinition
public class CustomFieldDefinition
public class CustomFieldDefinition

Замечания

Пользовательские поля представляют собой поля в хранилище метаданных, идентифицируемые целыми числами. Если приложению требуется понятное имя для одного или нескольких полей, необходимо сопоставить это целое число с именем. Пользовательские поля можно определять в двух целях: для идентификации элементов и для предоставления информации о версиях этих элементов. Поля версий позволяют платформе Sync Framework определять, был ли изменен элемент или базовая единица. Дополнительные сведения о метаданных простого поставщика см. в разделе Управление метаданными для простых поставщиков.

Пользовательское поле может иметь один из следующих типов данных. Для типов фиксированной длины используется конструктор с двумя параметрами: CustomFieldDefinition. Для типов переменной длины используется конструктор с тремя параметрами: CustomFieldDefinition.

Тип

Конструктор

Byte

CustomFieldDefinition

Byte[]

CustomFieldDefinition

Guid

CustomFieldDefinition

String

CustomFieldDefinition

UInt16

CustomFieldDefinition

UInt32

CustomFieldDefinition

UInt64

CustomFieldDefinition

Пример

В следующих примерах кода показана подготовка входных данных для объекта ItemMetadataSchema. Константы в образце кода определяют целочисленные значения для каждого столбца в хранилище элементов. Эти данные используются при создании пользовательских определений полей и правил идентификации для объекта ItemMetadataSchema. Чтобы просмотреть этот код в контексте полного приложения, см. приложение "Sync101 using Simple Sync Provider", которое можно найти в пакете Sync Framework SDK или на странице 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

Иерархия наследования

System.Object
  Microsoft.Synchronization.SimpleProviders.CustomFieldDefinition

Многопоточное использование

Все общие статические члены (Shared в Visual Basic) можно использовать в многопоточных операциях. Безопасная многопоточная работа с членами экземпляров типа не гарантируется.

См. также

Справочник

Элементы CustomFieldDefinition
Пространство имен Microsoft.Synchronization.SimpleProviders