次の方法で共有


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

解説

カスタム フィールドは、メタデータ ストア内で整数によって識別されます。フィールドの表示名を必要とするアプリケーションは、この整数を名前に対応付ける必要があります。カスタム フィールドが定義されるのには、2 つの理由があります。1 つは項目を識別することであり、もう 1 つは、その項目に関するバージョン情報を提供することです。Sync Framework は、バージョン フィールドによって、特定の項目または変更単位が変更済みかどうかを判断します。簡易プロバイダーのメタデータの詳細については、「簡易プロバイダーのメタデータの管理」を参照してください。

カスタム フィールドには、次のいずれかのデータ型を使用できます。固定長の型に対しては、パラメーター 2 つのコンストラクター CustomFieldDefinition を使用します。可変長の型に対しては、パラメーター 3 つのコンストラクター CustomFieldDefinition を使用します。

コンストラクター

Byte

CustomFieldDefinition

Byte[]

CustomFieldDefinition

Guid

CustomFieldDefinition

String

CustomFieldDefinition

UInt16

CustomFieldDefinition

UInt32

CustomFieldDefinition

UInt64

CustomFieldDefinition

以下に示したのは、ItemMetadataSchema オブジェクトへの入力を行うコード例です。このサンプル コードでは、項目ストア内の各列に整数値の定数を定義しています。カスタム フィールドの定義や ItemMetadataSchema オブジェクトの ID ルールを作成するときは、それらの値が使用されます。完全なアプリケーションのコンテキストでこのコードを表示するには、Sync Framework SDK やCode Galleryから入手できる "Sync101 using Simple Sync Provider" アプリケーションを参照してください。

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

スレッド セーフ

この型の public static (Visual Basic では Shared ) メンバーはすべて、スレッド セーフです。インスタンス メンバーの場合は、スレッド セーフであるとは限りません。

参照

リファレンス

CustomFieldDefinition メンバー
Microsoft.Synchronization.SimpleProviders 名前空間