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

线程安全

此类型的所有公共静态(在 Visual Basic 中共享 )成员都是线程安全的。不保证任何实例成员的线程安全。

请参阅

参考

CustomFieldDefinition 成员
Microsoft.Synchronization.SimpleProviders 命名空间