Bagikan melalui


VariableDispenser.Reset Metode

Definisi

Menghapus daftar baca-saja dan daftar baca/tulis saat panggilan GetVariables(Variables) gagal.

public:
 void Reset();
public void Reset ();
member this.Reset : unit -> unit
Public Sub Reset ()

Contoh

Contoh kode berikut mengunci kumpulan variabel, lalu menentukan apakah koleksi variabel dikunci sebelum membukanya. Jika kunci gagal, maka Reset dipanggil.

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  

Keterangan

Metode ini dapat digunakan untuk menghapus daftar baca-saja dan daftar kunci baca/tulis setelah panggilan gagal GetVariables . Jika panggilan ke GetVariables gagal, daftar kunci tidak dibersihkan dan oleh karena itu, jika Anda memanggil GetVariables lagi, upaya akan dilakukan untuk mengunci variabel yang sama. Jika Anda ingin mencoba kembali mengunci variabel yang sama, panggil GetVariables lagi tanpa memanggil terlebih Reset dahulu. Atau, Anda dapat memilih untuk merilis daftar dengan menggunakan metode ini dan meninggalkan operasi sampai semua variabel yang diperlukan tersedia dan dapat dikunci sekaligus.

Selain itu, Reset metode ini digunakan jika Anda menerima kegagalan dari GetVariables dan Anda ingin mengunci serangkaian variabel yang sama sekali berbeda dan tidak terkait berikutnya. Anda akan memanggil Reset untuk menghapus daftar kunci, lalu mengisi ulang daftar kunci dengan menggunakan LockForReadmetode , LockForWrite, LockOneForRead, dan LockOneForWrite .

Berlaku untuk