VariableDispenser.Reset Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Bereinigt sowohl die Liste für schreibgeschützten Zugriff als auch die Liste für Lese-/Schreibzugriff, wenn beim Aufruf von GetVariables(Variables) ein Fehler auftritt.
public:
void Reset();
public void Reset ();
member this.Reset : unit -> unit
Public Sub Reset ()
Beispiele
Im folgenden Codebeispiel wird eine Auflistung von Variablen gesperrt und anschließend bestimmt, ob die Variablensammlung gesperrt ist, bevor sie entsperrt werden. Wenn die Sperre fehlgeschlagen ist, wird sie Reset aufgerufen.
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
Hinweise
Diese Methode kann verwendet werden, um die schreibgeschützte Liste und die Lese-/Schreibsperrliste zu löschen, nachdem ein Aufruf GetVariables fehlgeschlagen ist. Wenn ein Aufruf GetVariables fehlschlägt, werden die Sperrlisten nicht gelöscht, und wenn Sie erneut aufrufen GetVariables , wird versucht, dieselben Variablen zu sperren. Wenn Sie erneut versuchen möchten, dieselben Variablen zu sperren, rufen Sie erneut auf, ohne zuerst zu aufrufen GetVariablesReset . Oder Sie können die Listen mithilfe dieser Methode freigeben und den Vorgang verlassen, bis alle erforderlichen Variablen verfügbar sind und gleichzeitig gesperrt werden können.
Darüber hinaus wird die Reset Methode verwendet, wenn Sie einen Fehler GetVariables erhalten und eine völlig andere und nicht verbundene Gruppe von Variablen als nächstes sperren möchten. Sie würden aufrufenReset, um die Sperrlisten zu löschen, und füllen Sie dann die Sperrlisten mithilfe der LockForReadMethoden , LockOneForReadLockForWriteund LockOneForWrite methoden erneut aus.