次の方法で共有


DbSyncProvider.SelectNewTimestampCommand プロパティ

ピア データベースの新しいタイムスタンプ値を返すクエリまたはストアド プロシージャを格納する IDbCommand オブジェクトを取得または設定します。このタイムスタンプにより、現在のセッション中に同期される一連の変更の上限が定義されます。

このプロパティは、CLS に準拠していません。  

名前空間: Microsoft.Synchronization.Data
アセンブリ: Microsoft.Synchronization.Data (microsoft.synchronization.data.dll 内)

構文

'宣言
Public Overridable Property SelectNewTimestampCommand As IDbCommand
'使用
Dim instance As DbSyncProvider
Dim value As IDbCommand

value = instance.SelectNewTimestampCommand

instance.SelectNewTimestampCommand = value
public virtual IDbCommand SelectNewTimestampCommand { get; set; }
public:
virtual property IDbCommand^ SelectNewTimestampCommand {
    IDbCommand^ get ();
    void set (IDbCommand^ value);
}
/** @property */
public IDbCommand get_SelectNewTimestampCommand ()

/** @property */
public void set_SelectNewTimestampCommand (IDbCommand value)
public function get SelectNewTimestampCommand () : IDbCommand

public function set SelectNewTimestampCommand (value : IDbCommand)

プロパティ値

クエリまたはストアド プロシージャを格納する IDbCommand オブジェクト。

解説

このコマンドで指定されたクエリまたはストアド プロシージャは、変更セットを選択して各ピアに適用するために使用される timestamp 値を返します。現在の同期セッション中に、コマンドによって新しい timestamp 値が提供されます。前回の同期セッションの timestamp 値以降、かつ新しい timestamp 値より前に加えられた変更が同期されます。その後、新しい値が格納され、次のセッションの開始点として使用されます。

次のコード例では、ピアから新しい timestamp 値を取得するコマンドを指定します。この場合、MIN_ACTIVE_ROWVERSION は、SQL Server データベースから timestamp 値を返します (MIN_ACTIVE_ROWVERSION は SQL Server 2005 Service Pack 2 で導入されました)。timestamp 値が使用されるのは、ピア データベースの追跡中の列に timestamp 値が含まれるためです。完全なコンテキスト例でこのコードを表示するには、「コラボレーション同期用にサーバー データベースを準備する方法 (SQL Server 以外)」を参照してください。

SqlCommand selectNewTimestampCommand = new SqlCommand();
string newTimestampVariable = "@" + DbSyncSession.SyncNewTimestamp;
selectNewTimestampCommand.CommandText = "SELECT " + newTimestampVariable + " = min_active_rowversion() - 1";
selectNewTimestampCommand.Parameters.Add(newTimestampVariable, SqlDbType.Timestamp);
selectNewTimestampCommand.Parameters[newTimestampVariable].Direction = ParameterDirection.Output;

sampleProvider.SelectNewTimestampCommand = selectNewTimestampCommand;
Dim newTimestampVariable As String = "@" + DbSyncSession.SyncNewTimestamp

Dim selectNewTimestampCommand As New SqlCommand()

With selectNewTimestampCommand
    .CommandText = "SELECT " + newTimestampVariable + " = min_active_rowversion() - 1"
    .Parameters.Add(newTimestampVariable, SqlDbType.Timestamp)
    .Parameters(newTimestampVariable).Direction = ParameterDirection.Output
End With

sampleProvider.SelectNewTimestampCommand = selectNewTimestampCommand

参照

リファレンス

DbSyncProvider クラス
DbSyncProvider メンバー
Microsoft.Synchronization.Data 名前空間