IdFormats プロパティ

派生クラスでオーバーライドされると、レプリカ ID および項目 ID の形式を表す SyncIdFormatGroup オブジェクトを取得します。

名前空間:  Microsoft.Synchronization.SimpleProviders
アセンブリ:  Microsoft.Synchronization.SimpleProviders (Microsoft.Synchronization.SimpleProviders.dll 内)

構文

'宣言
Public MustOverride ReadOnly Property IdFormats As SyncIdFormatGroup
    Get
'使用
Dim instance As SimpleSyncProvider
Dim value As SyncIdFormatGroup

value = instance.IdFormats
public abstract SyncIdFormatGroup IdFormats { get; }
public:
virtual property SyncIdFormatGroup^ IdFormats {
    SyncIdFormatGroup^ get () abstract;
}
abstract IdFormats : SyncIdFormatGroup
abstract function get IdFormats () : SyncIdFormatGroup

プロパティ値

型 : Microsoft.Synchronization. . :: . .SyncIdFormatGroup
レプリカ ID および項目 ID の形式を定義するために使用する SyncIdFormatGroup オブジェクト。

説明

項目を同期するには、Sync Framework が項目ストアから目的の項目を識別し、その ID をメタデータ ストアにおける内部 ID に対応付けることができなければなりません。相互に同期されるプロバイダーで使用されるレプリカ ID および項目 ID の形式は、IdFormats プロパティによって指定される共通の形式である必要があります。

次のコードでは、MyFullEnumerationSimpleSyncProvider サンプル クラスのコンストラクターと IdFormats プロパティを定義しています。これにより、Sync Framework ランタイムは、メタデータ ストアの ID に使用される形式を判別できます。フレキシブル ID を使用しなかった場合、Sync Framework は固定形式を使用してレプリカ、項目、および変更単位を識別します。フレキシブル ID を使用した場合は、ISimpleSyncProviderIdGenerator メソッドを使用して ID が生成されます。完全なアプリケーションのコンテキストでこのコードを表示するには、Sync Framework SDK やCode Galleryから入手できる "Sync101 using Simple Sync Provider" アプリケーションを参照してください。

public MyFullEnumerationSimpleSyncProvider(string name, MySimpleDataStore store)
{
    _name = name;
    _store = store;

    // Create a file to store metadata for all items and a file to store 
    // the replica ID.
    _replicaMetadataFile = Environment.CurrentDirectory + "\\" + _name.ToString() + ".Metadata";
    _replicaIdFile = Environment.CurrentDirectory + "\\" + _name.ToString() + ".Replicaid";

    // Set ReplicaIdFormat to use a GUID as an ID, and ItemIdFormat to use a GUID plus
    // an 8-byte prefix.
    _idFormats = new SyncIdFormatGroup();
    _idFormats.ItemIdFormat.IsVariableLength = false;
    _idFormats.ItemIdFormat.Length = 24;
    _idFormats.ReplicaIdFormat.IsVariableLength = false;
    _idFormats.ReplicaIdFormat.Length = 16;

    this.ItemConstraint += new EventHandler<SimpleSyncItemConstraintEventArgs>(OnItemConstraint);
    this.ItemConflicting += new EventHandler<SimpleSyncItemConflictingEventArgs>(OnItemConflicting);
}
public SyncId ReplicaId
{
    get 
    {
        if (_replicaId == null)
        {
            _replicaId = GetReplicaIdFromFile( _replicaIdFile);
        }

        return _replicaId; 
    }
}

public override SyncIdFormatGroup IdFormats
{
    get { return _idFormats; }
}
Public Sub New(ByVal name As String, ByVal store As MySimpleDataStore)
    _name = name
    _store = store

    ' Create a file to store metadata for all items and a file to store 
    ' the replica ID. 
    _replicaMetadataFile = (Environment.CurrentDirectory & "\") + _name.ToString() & ".Metadata"
    _replicaIdFile = (Environment.CurrentDirectory & "\") + _name.ToString() & ".Replicaid"

    ' Set ReplicaIdFormat to use a GUID as an ID, and ItemIdFormat to use a GUID plus 
    ' an 8-byte prefix. 
    _idFormats = New SyncIdFormatGroup()
    _idFormats.ItemIdFormat.IsVariableLength = False
    _idFormats.ItemIdFormat.Length = 24
    _idFormats.ReplicaIdFormat.IsVariableLength = False
    _idFormats.ReplicaIdFormat.Length = 16

    AddHandler Me.ItemConstraint, AddressOf HandleItemConstraint
    AddHandler Me.ItemConflicting, AddressOf HandleItemConflicting
End Sub
Public ReadOnly Property ReplicaId() As SyncId
    Get
        If _replicaId Is Nothing Then
            _replicaId = GetReplicaIdFromFile(_replicaIdFile)
        End If

        Return _replicaId
    End Get
End Property

Public Overrides ReadOnly Property IdFormats() As SyncIdFormatGroup
    Get
        Return _idFormats
    End Get
End Property

参照

参照

SimpleSyncProviderクラス

SimpleSyncProvider メンバー

Microsoft.Synchronization.SimpleProviders 名前空間