Свойство SelectNewAnchorCommand

Возвращает или задает объект IDbCommand, который содержит запрос или хранимую процедуру для получения нового значения привязки из базы данных сервера. Привязка определяет верхнюю границу набора изменений, синхронизируемых в текущем сеансе.

Пространство имен:  Microsoft.Synchronization.Data.Server
Сборка:  Microsoft.Synchronization.Data.Server (в Microsoft.Synchronization.Data.Server.dll)

Синтаксис

'Декларация
Public Property SelectNewAnchorCommand As IDbCommand
    Get
    Set
'Применение
Dim instance As DbServerSyncProvider
Dim value As IDbCommand

value = instance.SelectNewAnchorCommand

instance.SelectNewAnchorCommand = value
public IDbCommand SelectNewAnchorCommand { get; set; }
public:
property IDbCommand^ SelectNewAnchorCommand {
    IDbCommand^ get ();
    void set (IDbCommand^ value);
}
member SelectNewAnchorCommand : IDbCommand with get, set
function get SelectNewAnchorCommand () : IDbCommand
function set SelectNewAnchorCommand (value : IDbCommand)

Значение свойства

Тип System.Data. . :: . .IDbCommand
Объект IDbCommand, содержащий запрос или хранимую процедуру.

Замечания

При выполнении текущей синхронизации создается новое значение точки привязки. Синхронизируются только те изменения, которые произведены между новым и предыдущим значениями точки привязки. После этого новое значение привязки сохраняется и в следующем сеансе синхронизации используется как предыдущее. Дополнительные сведения см. в подразделе «Определение изменений данных, которые должны быть загружены на клиент» раздела Отслеживание изменений в базе данных сервера.

Примеры

В следующем примере кода указана команда для получения от сервера нового значения привязки. В этом случае функция MIN_ACTIVE_ROWVERSION возвращает из базы данных SQL Server значение типа timestamp (эта функция появилась в SQL Server 2005 с пакетом обновления 2 (SP2)). Значение timestamp используется потому, что его содержат отслеживаемые столбцы в базе данных сервера. Если бы в них содержались значения даты, можно было бы воспользоваться функцией GETUTCDATE() вместо MIN_ACTIVE_ROWVERSION. Класс SyncSession содержит несколько строковых констант, которые могут быть использованы в командах синхронизации. Одной из них является SyncNewReceivedAnchor. Литерал @sync\_new\_received\_anchor может применяться непосредственно в запросах. Чтобы просмотреть этот код в контексте полного примера, см. раздел Приступая к работе: синхронизация клиента и сервера.

SqlCommand selectNewAnchorCommand = new SqlCommand();
string newAnchorVariable = "@" + SyncSession.SyncNewReceivedAnchor;
selectNewAnchorCommand.CommandText = "SELECT " + newAnchorVariable + " = min_active_rowversion() - 1";
selectNewAnchorCommand.Parameters.Add(newAnchorVariable, SqlDbType.Timestamp);
selectNewAnchorCommand.Parameters[newAnchorVariable].Direction = ParameterDirection.Output;
selectNewAnchorCommand.Connection = serverConn;
this.SelectNewAnchorCommand = selectNewAnchorCommand;
Dim selectNewAnchorCommand As New SqlCommand()
Dim newAnchorVariable As String = "@" + SyncSession.SyncNewReceivedAnchor
selectNewAnchorCommand.CommandText = "SELECT " + newAnchorVariable + " = min_active_rowversion() - 1"
selectNewAnchorCommand.Parameters.Add(newAnchorVariable, SqlDbType.Timestamp)
selectNewAnchorCommand.Parameters(newAnchorVariable).Direction = ParameterDirection.Output
selectNewAnchorCommand.Connection = serverConn
Me.SelectNewAnchorCommand = selectNewAnchorCommand

См. также

Справочник

DbServerSyncProvider Класс

Элементы DbServerSyncProvider

Пространство имен Microsoft.Synchronization.Data.Server