Свойство DbSyncProvider.UpdateScopeInfoCommand
Возвращает или задает объект IDbCommand, который содержит запрос или хранимую процедуру для обновления метаданных области в одноранговой базе данных.
Это свойство несовместимо с CLS.
Пространство имен: Microsoft.Synchronization.Data
Сборка: Microsoft.Synchronization.Data (в microsoft.synchronization.data.dll)
Синтаксис
'Декларация
Public Overridable Property UpdateScopeInfoCommand As IDbCommand
'Применение
Dim instance As DbSyncProvider
Dim value As IDbCommand
value = instance.UpdateScopeInfoCommand
instance.UpdateScopeInfoCommand = value
public virtual IDbCommand UpdateScopeInfoCommand { get; set; }
public:
virtual property IDbCommand^ UpdateScopeInfoCommand {
IDbCommand^ get ();
void set (IDbCommand^ value);
}
/** @property */
public IDbCommand get_UpdateScopeInfoCommand ()
/** @property */
public void set_UpdateScopeInfoCommand (IDbCommand value)
public function get UpdateScopeInfoCommand () : IDbCommand
public function set UpdateScopeInfoCommand (value : IDbCommand)
Значение свойства
Объект IDbCommand, содержащий запрос или хранимую процедуру.
Замечания
Эта команда обновляет сведения из таблицы области метаданных, например набор знаний о синхронизации и очистке, необходимые платформе Sync Framework. Дополнительные сведения об использовании областей см. в разделе «Создание таблиц отслеживания для хранения метаданных» в разделе Как подготовить серверную базу данных для синхронизации совместной работы (не SQL Server).
Пример
В следующем примере кода приведена команда, которая обновляет метаданные в таблице области каждой одноранговой базы данных. Чтобы просмотреть этот код в контексте полного примера, см. раздел Как подготовить серверную базу данных для синхронизации совместной работы (не SQL Server).
SqlCommand updReplicaInfoCmd = new SqlCommand();
updReplicaInfoCmd.CommandType = CommandType.Text;
updReplicaInfoCmd.CommandText = "UPDATE Sync.ScopeInfo SET " +
"scope_sync_knowledge = @" + DbSyncSession.SyncScopeKnowledge + ", " +
"scope_id = @" + DbSyncSession.SyncScopeId + ", " +
"scope_tombstone_cleanup_knowledge = @" + DbSyncSession.SyncScopeCleanupKnowledge + " " +
"WHERE scope_name = @" + DbSyncSession.SyncScopeName + " AND " +
" ( @" + DbSyncSession.SyncCheckConcurrency + " = 0 OR scope_timestamp = @" + DbSyncSession.SyncScopeTimestamp + "); " +
"set @" + DbSyncSession.SyncRowCount + " = @@rowcount";
updReplicaInfoCmd.Parameters.Add("@" + DbSyncSession.SyncScopeKnowledge, SqlDbType.VarBinary, 10000);
updReplicaInfoCmd.Parameters.Add("@" + DbSyncSession.SyncScopeCleanupKnowledge, SqlDbType.VarBinary, 10000);
updReplicaInfoCmd.Parameters.Add("@" + DbSyncSession.SyncScopeName, SqlDbType.NVarChar, 100);
updReplicaInfoCmd.Parameters.Add("@" + DbSyncSession.SyncCheckConcurrency, SqlDbType.Int);
updReplicaInfoCmd.Parameters.Add("@" + DbSyncSession.SyncScopeId, SqlDbType.UniqueIdentifier);
updReplicaInfoCmd.Parameters.Add("@" + DbSyncSession.SyncScopeTimestamp, SqlDbType.BigInt);
updReplicaInfoCmd.Parameters.Add("@" + DbSyncSession.SyncRowCount, SqlDbType.Int).Direction = ParameterDirection.Output;
sampleProvider.UpdateScopeInfoCommand = updReplicaInfoCmd;
Dim updReplicaInfoCmd As New SqlCommand()
With updReplicaInfoCmd
.CommandType = CommandType.Text
.CommandText = "UPDATE Sync.ScopeInfo SET " _
& "scope_sync_knowledge = @" + DbSyncSession.SyncScopeKnowledge + ", " _
& "scope_id = @" + DbSyncSession.SyncScopeId + ", " _
& "scope_tombstone_cleanup_knowledge = @" + DbSyncSession.SyncScopeCleanupKnowledge + " " _
& "WHERE scope_name = @" + DbSyncSession.SyncScopeName + " AND " _
& " ( @" + DbSyncSession.SyncCheckConcurrency + " = 0 OR scope_timestamp = @" + DbSyncSession.SyncScopeTimestamp + "); " _
& "set @" + DbSyncSession.SyncRowCount + " = @@rowcount"
.Parameters.Add("@" + DbSyncSession.SyncScopeKnowledge, SqlDbType.VarBinary, 10000)
.Parameters.Add("@" + DbSyncSession.SyncScopeCleanupKnowledge, SqlDbType.VarBinary, 10000)
.Parameters.Add("@" + DbSyncSession.SyncScopeName, SqlDbType.NVarChar, 100)
.Parameters.Add("@" + DbSyncSession.SyncCheckConcurrency, SqlDbType.Int)
.Parameters.Add("@" + DbSyncSession.SyncScopeId, SqlDbType.UniqueIdentifier)
.Parameters.Add("@" + DbSyncSession.SyncScopeTimestamp, SqlDbType.BigInt)
.Parameters.Add("@" + DbSyncSession.SyncRowCount, SqlDbType.Int).Direction = ParameterDirection.Output
End With
sampleProvider.UpdateScopeInfoCommand = updReplicaInfoCmd
См. также
Справочник
Класс DbSyncProvider
Элементы DbSyncProvider
Пространство имен Microsoft.Synchronization.Data