Compartilhar via


Propriedade UpdateScopeCleanupTimestampCommand

Obtém ou define um objeto IDbCommand que contém a consulta ou o procedimento armazenado que atualiza a coluna scope_cleanup_timestamp para um escopo específico na tabela scope_info, a fim de marcar o ponto até o qual a limpeza foi executada no escopo.

Namespace:  Microsoft.Synchronization.Data
Assembly:  Microsoft.Synchronization.Data (em Microsoft.Synchronization.Data.dll)

Sintaxe

'Declaração
Public Overridable Property UpdateScopeCleanupTimestampCommand As IDbCommand
    Get
    Set
'Uso
Dim instance As DbSyncProvider
Dim value As IDbCommand

value = instance.UpdateScopeCleanupTimestampCommand

instance.UpdateScopeCleanupTimestampCommand = value
public virtual IDbCommand UpdateScopeCleanupTimestampCommand { get; set; }
public:
virtual property IDbCommand^ UpdateScopeCleanupTimestampCommand {
    IDbCommand^ get ();
    void set (IDbCommand^ value);
}
abstract UpdateScopeCleanupTimestampCommand : IDbCommand with get, set
override UpdateScopeCleanupTimestampCommand : IDbCommand with get, set
function get UpdateScopeCleanupTimestampCommand () : IDbCommand
function set UpdateScopeCleanupTimestampCommand (value : IDbCommand)

Valor da propriedade

Tipo: System.Data. . :: . .IDbCommand
Um objeto IDbCommand que contém uma consulta ou um procedimento armazenado.

Exemplos

O exemplo de código a seguir especifica um comando para a propriedade UpdateScopeCleanupTimestampCommand. Esse comando e o comando especificado para a propriedade SelectOverlappingScopesCommand habilita o Sync Framework para tratar da limpeza de forma adequada quando uma tabela é incluída em mais de um escopo. Para exibir esse código no contexto de um exemplo completo, consulte Como limpar metadados para sincronização de colaboração (não SQL Server).

SqlCommand updScopeCleanupInfoCmd = new SqlCommand();
updScopeCleanupInfoCmd.CommandType = CommandType.Text;
updScopeCleanupInfoCmd.CommandText = "UPDATE  scope_info set " +
                                     " scope_cleanup_timestamp = @" + DbSyncSession.SyncScopeCleanupTimestamp + 
                                     " WHERE scope_name = @" + DbSyncSession.SyncScopeName + 
                                     " AND(scope_cleanup_timestamp is null or scope_cleanup_timestamp <  @" + DbSyncSession.SyncScopeCleanupTimestamp + ");" +
                                     " SET @" + DbSyncSession.SyncRowCount + " = @@rowcount";
updScopeCleanupInfoCmd.Parameters.Add("@" + DbSyncSession.SyncScopeCleanupTimestamp, SqlDbType.BigInt);
updScopeCleanupInfoCmd.Parameters.Add("@" + DbSyncSession.SyncScopeName, SqlDbType.NVarChar, 100);
updScopeCleanupInfoCmd.Parameters.Add("@" + DbSyncSession.SyncRowCount, SqlDbType.Int).Direction = ParameterDirection.Output;
sampleDbProvider.UpdateScopeCleanupTimestampCommand = updScopeCleanupInfoCmd;
Dim updScopeCleanupInfoCmd As New SqlCommand()
With updScopeCleanupInfoCmd
    .CommandType = CommandType.Text
    .CommandText = "UPDATE  scope_info set " _
                 & " scope_cleanup_timestamp = @" + DbSyncSession.SyncScopeCleanupTimestamp _
                 & " WHERE scope_name = @" + DbSyncSession.SyncScopeName _
                 & " AND(scope_cleanup_timestamp is null or scope_cleanup_timestamp <  @" + DbSyncSession.SyncScopeCleanupTimestamp + ");" _
                 & " SET @" + DbSyncSession.SyncRowCount + " = @@rowcount"
    .Parameters.Add("@" + DbSyncSession.SyncScopeCleanupTimestamp, SqlDbType.BigInt)
    .Parameters.Add("@" + DbSyncSession.SyncScopeName, SqlDbType.NVarChar, 100)
    .Parameters.Add("@" + DbSyncSession.SyncRowCount, SqlDbType.Int).Direction = ParameterDirection.Output
End With

sampleDbProvider.UpdateScopeCleanupTimestampCommand = updScopeCleanupInfoCmd

Consulte também

Referência

DbSyncProvider Classe

Membros DbSyncProvider

Namespace Microsoft.Synchronization.Data