VariableDispenser Classe

Definição

Acessa a coleção Variables durante a execução do pacote. Esta classe não pode ser herdada.

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
Herança
VariableDispenser

Comentários

Há dois cenários para usar o dispensador de variável.

  1. Você deseja apenas uma variável. Nesse cenário, Call LockOneForRead ou LockOneForWrite , e uma coleção com um elemento é retornada.

  2. Você deseja várias variáveis. Nesse cenário, chame LockForRead e LockForWrite várias vezes, uma para cada variável. Isso cria duas listas, uma lista que contém variáveis para leitura e uma lista que contém variáveis para gravação. Em seguida, chame GetVariables , que fornece uma coleção que contém todas as variáveis bloqueadas. Se houver GetVariables sucesso, as duas listas, que são as listas de nomes de variáveis, não os bloqueios reais, serão limpas.

Para liberar explicitamente os bloqueios, chame Unlock na coleção. Esse método desbloqueia as próprias variáveis. Se GetVariables o falhar, as listas permanecerão inalteradas e você poderá chamar GetVariables novamente. Se você ainda não tiver sucesso em obter as variáveis, chame Reset para limpar as listas e traga o dispensador de variável de volta para seu estado inicial.

A Variables coleção contém uma Locked propriedade que indica se uma coleção de variáveis de dispensador de variável está bloqueada ( true ) ou desbloqueada ( false ). O motivo para revisar essa propriedade é que algumas tarefas liberam explicitamente bloqueios para as variáveis que estão usando e chamar Unlock duas vezes gera um erro. Portanto, você deve usar essa propriedade para determinar se a coleção dispensada está bloqueada antes de chamar Unlock .

Importante

O VariableDispenser é usado com as classes de tempo de execução. Se você estiver usando componentes de fluxo de dados ( Microsoft.SqlServer.Dts.Pipeline ), talvez seja necessário usar o IDTSVariableDispenser100 em vez disso. Para saber qual dispensador de variável usar, consulte a documentação do objeto no qual você está adquirindo variáveis e verifique o objeto de retorno do método.

Métodos

Contains(String)

Especifica se um item pode ser recuperado na coleção VariableDispenser usando a indexação sem gerar uma exceção.

Equals(Object)

Determina se duas instâncias de objeto são iguais.

(Herdado de DtsObject)
GetHashCode()

Retorna o código hash para a instância.

(Herdado de DtsObject)
GetQualifiedName(String)

Retorna o nome qualificado da variável.

GetVariables(Variables)

Bloqueia as variáveis que estão na lista somente leitura e de leitura e gravação.

LockForRead(String)

Adiciona a variável à lista de variáveis a ser bloqueada para acesso somente leitura.

LockForWrite(String)

Adiciona a variável à lista de variáveis a ser bloqueada para acesso de leitura e gravação.

LockOneForRead(String, Variables)

Coloca a variável em uma lista e, em seguida, bloqueia-a para acesso somente leitura.

LockOneForWrite(String, Variables)

Coloca a variável em uma lista e, em seguida, bloqueia-a para acesso de leitura e gravação.

Reset()

Desmarca a lista somente leitura e a lista leitura/gravação quando a chamada para GetVariables(Variables) apresenta falha.

Aplica-se a