VariableDispenser.Reset Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Borra tanto la lista de solo lectura como la lista de lectura/escritura cuando falla la llamada a To (TO GetVariables(Variables) TO PAGO).
public:
void Reset();
public void Reset();
member this.Reset : unit -> unit
Public Sub Reset ()
Ejemplos
El siguiente ejemplo de código bloquea una colección de variables y luego determina si la colección de variables está bloqueada antes de desbloquearlas. Si la cerradura falló, entonces Reset se llama.
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
Comentarios
Este método puede usarse para borrar la lista de solo lectura y la lista de bloqueos de lectura/escritura después de que una llamada GetVariables haya fallado. Si falla una llamada a GetVariables falla, las listas de bloqueo no se borran y, por tanto, si vuelves a llamar GetVariables , se intentará bloquear las mismas variables. Si quieres intentar bloquear las mismas variables, llama GetVariables de nuevo sin llamar Reset antes. O bien, puedes optar por liberar las listas usando este método y abandonar la operación hasta que todas las variables necesarias estén disponibles y puedan bloquearse a la vez.
Además, el Reset método se utiliza si recibes un fallo de y GetVariables quieres bloquear un conjunto de variables completamente diferente y no relacionado a continuación. Llamarías Reset para limpiar las listas de candados y luego rellenarías las listas usando los LockForReadmétodos , LockForWrite, LockOneForRead, y LockOneForWrite .