Share via


DbSyncProvider.UpdateScopeCleanupTimestampCommand Propiedad

Obtiene o establece un objeto IDbCommand que contiene la consulta o procedimiento almacenado que actualiza la columna scope_cleanup_timestamp para un ámbito determinado de la tabla scope_info, para marcar el punto hasta el que se ha realizado la limpieza para el ámbito.

Esta propiedad no es compatible con CLS.  

Espacio de nombres: Microsoft.Synchronization.Data
Ensamblado: Microsoft.Synchronization.Data (en microsoft.synchronization.data.dll)

Sintaxis

'Declaración
Public Overridable Property UpdateScopeCleanupTimestampCommand As IDbCommand
'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);
}
/** @property */
public IDbCommand get_UpdateScopeCleanupTimestampCommand ()

/** @property */
public void set_UpdateScopeCleanupTimestampCommand (IDbCommand value)
public function get UpdateScopeCleanupTimestampCommand () : IDbCommand

public function set UpdateScopeCleanupTimestampCommand (value : IDbCommand)

Valor de la propiedad

Objeto IDbCommand que contiene una consulta o procedimiento almacenado.

Ejemplo

En el ejemplo de código siguiente se especifica un comando para la propiedad UpdateScopeCleanupTimestampCommand. Este comando y el que se especifica para la propiedad SelectOverlappingScopesCommand permiten que Sync Framework administre correctamente la limpieza en los casos en los que una tabla está incluida en varios ámbitos. Para consultar este código en el contexto de un ejemplo completo, vea Limpiar los metadatos de la sincronización de colaboración (no 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

Vea también

Referencia

DbSyncProvider Clase
DbSyncProvider Miembros
Microsoft.Synchronization.Data Espacio de nombres