Compartir a través de


VariableDispenser Clase

Definición

Obtiene acceso a la colección Variables durante la ejecución del paquete. Esta clase no puede heredarse.

public ref class VariableDispenser sealed : Microsoft::SqlServer::Dts::Runtime::DtsObject
public sealed class VariableDispenser : Microsoft.SqlServer.Dts.Runtime.DtsObject
type VariableDispenser = class
    inherit DtsObject
Public NotInheritable Class VariableDispenser
Inherits DtsObject
Herencia
VariableDispenser

Comentarios

Hay dos escenarios para usar el dispensador de variables.

  1. Solo quiere una variable. En este escenario, se devuelve una llamada LockOneForRead a o LockOneForWritey una colección con un elemento .

  2. Quiere varias variables. En este escenario, llame a LockForRead y LockForWrite varias veces, una para cada variable. Esto crea dos listas, una lista que contiene variables para leer y una lista que contiene variables para escribir. A continuación, llame a GetVariables, que proporciona una colección que contiene todas las variables bloqueadas. Si GetVariables se ejecuta correctamente, se borran las dos listas, que son las listas de nombres de variable, no bloqueos reales.

Para liberar explícitamente los bloqueos, llame a Unlock en la colección. Este método desbloquea las propias variables. Si GetVariables se produce un error, las listas permanecen sin cambios y puede llamar de GetVariables nuevo. Si todavía no logra obtener las variables, llame Reset a para borrar las listas y devolver el dispensador de variables a su estado inicial.

La Variables colección contiene una Locked propiedad que indica si una colección de dispensadores de variables está bloqueada (true) o desbloqueada (false). El motivo para revisar esta propiedad es que algunas tareas liberan explícitamente bloqueos en las variables que están usando y la llamada Unlock a dos veces produce un error. Por lo tanto, debe usar esta propiedad para determinar si la colección dispensada está bloqueada antes de llamar a Unlock.

Importante

VariableDispenser se usa con las clases Runtime. Si usa componentes de flujo de datos (Microsoft.SqlServer.Dts.Pipeline), es posible que tenga que usar en IDTSVariableDispenser100 su lugar. Para saber en qué dispensador de variables se va a usar, consulte la documentación del objeto en el que se van a adquirir variables y compruebe el objeto devuelto del método .

Métodos

Contains(String)

Especifica si un elemento se puede recuperar de la colección VariableDispenser utilizando la indización sin producir una excepción.

Equals(Object)

Determina si dos instancias de objeto son iguales.

(Heredado de DtsObject)
GetHashCode()

Devuelve el código hash de esta instancia.

(Heredado de DtsObject)
GetQualifiedName(String)

Devuelve el nombre completo de la variable.

GetVariables(Variables)

Bloquea las variables que están en la lista de solo lectura y en la lista de lectura y escritura.

LockForRead(String)

Agrega la variable a la lista de variables que se van a bloquear para el acceso de solo lectura.

LockForWrite(String)

Agrega la variable a la lista de variables que se van a bloquear para el acceso de lectura y escritura.

LockOneForRead(String, Variables)

Coloca la variable en una lista y, a continuación, la bloquea para el acceso de solo lectura.

LockOneForWrite(String, Variables)

Coloca la variable en una lista y, a continuación, la bloquea para el acceso de lectura y escritura.

Reset()

Borra la lista de solo lectura y la lista de lectura y escritura cuando se produce un error en la llamada a GetVariables(Variables).

Se aplica a