Compartir a través de


BatchSize Propiedad

Obtiene o establece el tamaño del lote (en número de filas) utilizado en los comandos que recuperan cambios de la base de datos servidor.

Espacio de nombres:  Microsoft.Synchronization.Data.Server
Ensamblado:  Microsoft.Synchronization.Data.Server (en Microsoft.Synchronization.Data.Server.dll)

Sintaxis

'Declaración
Public Property BatchSize As Integer
    Get
    Set
'Uso
Dim instance As DbServerSyncProvider
Dim value As Integer

value = instance.BatchSize

instance.BatchSize = value
public int BatchSize { get; set; }
public:
property int BatchSize {
    int get ();
    void set (int value);
}
member BatchSize : int with get, set
function get BatchSize () : int
function set BatchSize (value : int)

Valor de la propiedad

Tipo: System. . :: . .Int32
Tamaño del lote (en número de filas) utilizado en los comandos que recuperan cambios de la base de datos servidor.

Notas

Sync Framework permite a las aplicaciones descargar lotes de cambios en el cliente (no se admite el procesamiento por lotes en las operaciones de carga). Para habilitar el procesamiento por lotes se especifica un valor para la propiedad BatchSize y se crea un comando para la propiedad SelectNewAnchorCommand que puede devolver valores de delimitador para cada lote de cambios. Para obtener más información, vea Cómo: Especificar el orden y el tamaño de lote de los cambios.

Ejemplos

El ejemplo de código siguiente crea un comando de delimitador que se puede usar si se producen cambios en los lotes. En lugar de devolver un nuevo valor de delimitador de una vez para todo el conjunto de cambios, devuelve un nuevo valor de delimitador para cada lote de cambios. Este ejemplo utiliza la propiedad BatchSize para especificar cuántos cambios debe haber en cada lote y las variables de sesión necesarias para pasar valores de delimitador de atrás adelante entre un procedimiento almacenado y el tiempo de ejecución de la sincronización. Si escribe comandos de adaptador de sincronización de forma manual, seguirá usando las variables de sesión @sync\_new\_received\_anchor y @sync\_last\_received\_anchor. El nuevo comando de delimitador es el único que usa la variable de sesión @sync\_max\_received\_anchor. Para consultar este código en el contexto de un ejemplo completo, vea Cómo: Especificar el orden y el tamaño de lote de los cambios.

SqlCommand selectNewAnchorCommand = new SqlCommand();
selectNewAnchorCommand.Connection = serverConn;
selectNewAnchorCommand.CommandText = "usp_GetNewBatchAnchor";
selectNewAnchorCommand.CommandType = CommandType.StoredProcedure;            
selectNewAnchorCommand.Parameters.Add("@" + SyncSession.SyncLastReceivedAnchor, SqlDbType.Timestamp, 8);
selectNewAnchorCommand.Parameters.Add("@" + SyncSession.SyncMaxReceivedAnchor, SqlDbType.Timestamp, 8);
selectNewAnchorCommand.Parameters.Add("@" + SyncSession.SyncNewReceivedAnchor, SqlDbType.Timestamp, 8);
selectNewAnchorCommand.Parameters.Add("@" + SyncSession.SyncBatchSize, SqlDbType.Int, 4);
selectNewAnchorCommand.Parameters.Add("@" + SyncSession.SyncBatchCount, SqlDbType.Int, 4);            

selectNewAnchorCommand.Parameters["@" + SyncSession.SyncMaxReceivedAnchor].Direction = ParameterDirection.Output;
selectNewAnchorCommand.Parameters["@" + SyncSession.SyncNewReceivedAnchor].Direction = ParameterDirection.Output;
selectNewAnchorCommand.Parameters["@" + SyncSession.SyncBatchCount].Direction = ParameterDirection.InputOutput;
this.SelectNewAnchorCommand = selectNewAnchorCommand;
this.BatchSize = 50;
Dim selectNewAnchorCommand As New SqlCommand()
selectNewAnchorCommand.Connection = serverConn
selectNewAnchorCommand.CommandText = "usp_GetNewBatchAnchor"
selectNewAnchorCommand.CommandType = CommandType.StoredProcedure
selectNewAnchorCommand.Parameters.Add("@" + SyncSession.SyncLastReceivedAnchor, SqlDbType.Timestamp, 8)
selectNewAnchorCommand.Parameters.Add("@" + SyncSession.SyncMaxReceivedAnchor, SqlDbType.Timestamp, 8)
selectNewAnchorCommand.Parameters.Add("@" + SyncSession.SyncNewReceivedAnchor, SqlDbType.Timestamp, 8)
selectNewAnchorCommand.Parameters.Add("@" + SyncSession.SyncBatchSize, SqlDbType.Int, 4)
selectNewAnchorCommand.Parameters.Add("@" + SyncSession.SyncBatchCount, SqlDbType.Int, 4)

selectNewAnchorCommand.Parameters("@" + SyncSession.SyncMaxReceivedAnchor).Direction = ParameterDirection.Output
selectNewAnchorCommand.Parameters("@" + SyncSession.SyncNewReceivedAnchor).Direction = ParameterDirection.Output
selectNewAnchorCommand.Parameters("@" + SyncSession.SyncBatchCount).Direction = ParameterDirection.InputOutput
Me.SelectNewAnchorCommand = selectNewAnchorCommand
Me.BatchSize = 50

Vea también

Referencia

DbServerSyncProvider Clase

DbServerSyncProvider Miembros

Microsoft.Synchronization.Data.Server Espacio de nombres