VariableDispenser Classe

Definizione

Accede alla Variables collezione durante l'esecuzione del pacchetto. La classe non può essere ereditata.

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
Ereditarietà
VariableDispenser

Commenti

Ci sono due scenari per utilizzare il distributore variabile.

  1. Vuoi solo una variabile. In questo scenario, si chiama LockOneForRead o LockOneForWrite, e viene restituita una collezione con un elemento.

  2. Vuoi avere diverse variabili. In questo scenario, chiama LockForRead e LockForWrite più volte, una per ogni variabile. Questo crea due liste, una che contiene variabili per la lettura e una lista che contiene variabili per la scrittura. Poi, chiama GetVariables, che ti dà una collezione che contiene tutte le variabili bloccate. Se GetVariables ha successo, le due liste, che sono le liste dei nomi delle variabili, non dei lock effettivi, vengono cancellate.

Per liberare esplicitamente le serrature, richiama Unlock la collezione. Questo metodo sblocca le variabili stesse. Se GetVariables fallisce, le liste restano invariate e puoi richiamare GetVariables . Se ancora non riesci a ottenere le variabili, chiama Reset per cancellare le liste e riportare il distributore di variabili allo stato iniziale.

La Variables collezione contiene una Locked proprietà che indica se una collezione di variabili dispenser di variabili è bloccata (true) o sbloccata (false). Il motivo per rivedere questa proprietà è che alcune attività rilasciano esplicitamente blocchi alle variabili che stanno usando, e chiamandola Unlock due volte genera un errore. Pertanto, dovresti usare questa proprietà per determinare se la collezione dispensata è bloccata prima di chiamare Unlock.

Importante

Viene VariableDispenser usato con le classi Runtime. Se stai usando componenti di flusso dati (Microsoft.SqlServer.Dts.Pipeline), allora potresti essere obbligato a usare invece di .IDTSVariableDispenser100 Per sapere quale distributore di variabili usare, consulta la documentazione dell'oggetto su cui stai acquisendo le variabili e verifica l'oggetto di ritorno del metodo.

Metodi

Nome Descrizione
Contains(String)

Specifica se un elemento può essere recuperato dalla VariableDispenser collezione utilizzando l'indicizzazione senza lanciare eccezioni.

Equals(Object)

Determina se due istanze dell'oggetto sono uguali.

(Ereditato da DtsObject)
GetHashCode()

Restituisce il codice hash per questa istanza.

(Ereditato da DtsObject)
GetQualifiedName(String)

Restituisce il nome qualificato della variabile.

GetVariables(Variables)

Blocca le variabili presenti nella lista di sola lettura e nella lista di lettura/scrittura.

LockForRead(String)

Aggiunge la variabile all'elenco delle variabili da bloccare per l'accesso in sola lettura.

LockForWrite(String)

Aggiunge la variabile all'elenco delle variabili da bloccare per l'accesso di lettura/scrittura.

LockOneForRead(String, Variables)

Inserisce la variabile in una lista e poi la blocca per l'accesso in sola lettura.

LockOneForWrite(String, Variables)

Inserisce la variabile in una lista e poi la blocca per l'accesso di lettura/scrittura.

Reset()

Cancella sia la lista di sola lettura che quella di lettura/scrittura quando la chiamata GetVariables(Variables) fallisce.

Si applica a