VariableDispenser.Reset Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Efface à la fois la liste en lecture seule et la liste lecture/écriture lorsque l’appel échoue GetVariables(Variables) .
public:
void Reset();
public void Reset();
member this.Reset : unit -> unit
Public Sub Reset ()
Exemples
L’exemple de code suivant verrouille une collection de variables, puis détermine si la collection de variables est verrouillée avant de les déverrouiller. Si le verrou a lâché, alors Reset il est appelé.
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.SqlServer.Dts.Runtime;
namespace Microsoft.SqlServer.SSIS.Sample
{
class Program
{
static void Main(string[] args)
{
Package pkg = new Package();
Variables vars = null;
VariableDispenser variableDispenser = pkg.VariableDispenser;
variableDispenser.LockForRead("System::PackageName");
variableDispenser.LockForRead("System::OfflineMode");
variableDispenser.GetVariables(ref vars);
// Determine whether the variable collection is locked.
Boolean isLocked = vars.Locked;
// Verify the value of vars.Locked. If the lock failed,
// call Reset.
if (isLocked)
{
vars.Unlock();
}
else
{
variableDispenser.Reset();
}
}
}
}
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports Microsoft.SqlServer.Dts.Runtime
Namespace Microsoft.SqlServer.SSIS.Sample
Class Program
Shared Sub Main(ByVal args() As String)
Dim pkg As Package = New Package()
Dim vars As Variables = Nothing
Dim variableDispenser As VariableDispenser = pkg.VariableDispenser
variableDispenser.LockForRead("System::PackageName")
variableDispenser.LockForRead("System::OfflineMode")
variableDispenser.GetVariables( vars)
' Determine whether the variable collection is locked.
Dim isLocked As Boolean = vars.Locked
' Verify the value of vars.Locked. If the lock failed,
' call Reset.
If isLocked = True Then
vars.Unlock()
Else
variableDispenser.Reset()
End If
End Sub
End Class
End Namespace
Remarques
Cette méthode peut être utilisée pour effacer la liste en lecture seule et la liste de verrouillage lecture/écriture après l’échec d’un appel à GetVariables A. Si un appel à GetVariables échoue, les listes de verrous ne sont pas effacées et donc, si vous appelez GetVariables à nouveau, une tentative sera faite pour verrouiller les mêmes variables. Si vous voulez réessayer de verrouiller les mêmes variables, rappelez GetVariables sans appeler Reset d’abord. Ou bien, vous pouvez choisir de libérer les listes en utilisant cette méthode et en abandonnant l’opération jusqu’à ce que toutes les variables requises soient disponibles et puissent être verrouillées en même temps.
De plus, la Reset méthode est utilisée si vous recevez une défaillance de GetVariables et que vous souhaitez verrouiller un ensemble de variables complètement différent et sans lien ensuite. Vous appelez Reset pour effacer les listes de serrures, puis rerempliriez les listes de serrures en utilisant les LockForReadméthodes , LockForWrite, LockOneForRead, et LockOneForWrite .