Condividi tramite


BreakpointTargetEnumerator.Current Proprietà

Definizione

Ottiene l'oggetto BreakpointTarget corrente nella raccolta.

public:
 property Microsoft::SqlServer::Dts::Runtime::BreakpointTarget ^ Current { Microsoft::SqlServer::Dts::Runtime::BreakpointTarget ^ get(); };
public Microsoft.SqlServer.Dts.Runtime.BreakpointTarget Current { get; }
member this.Current : Microsoft.SqlServer.Dts.Runtime.BreakpointTarget
Public ReadOnly Property Current As BreakpointTarget

Valore della proprietà

Oggetto BreakpointTarget corrente nella raccolta.

Esempio

Nell'esempio di codice seguente viene creato un enumeratore, quindi vengono usati i Current metodi e MoveNext per passare alla raccolta.

using System;  
using System.Collections.Generic;  
using System.Text;  
using Microsoft.SqlServer.Dts.Runtime;  
using Microsoft.SqlServer.Dts.Tasks.BulkInsertTask;  

namespace BreakpointTarget_Expression  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {  
            Package pkg = new Package();  
            TaskHost taskHost = (TaskHost)pkg.Executables.Add("STOCK:FileSystemTask");  
            BreakpointTargets bptargets = pkg.GetBreakpointTargets(taskHost, false);  
            // Create the enumerator.  
            BreakpointTargetEnumerator myEnumerator = bptargets.GetEnumerator();  
            Console.WriteLine("The collection contains the following values:");  
            int i = 0;  
            while ((myEnumerator.MoveNext()) && (myEnumerator.Current != null))  
                Console.WriteLine("[{0}] {1}", i++, myEnumerator.Current.Description);  
        }  
    }  
}  
Imports System  
Imports System.Collections.Generic  
Imports System.Text  
Imports Microsoft.SqlServer.Dts.Runtime  
Imports Microsoft.SqlServer.Dts.Tasks.BulkInsertTask  

Namespace BreakpointTarget_Expression  
    Class Program  
        Shared  Sub Main(ByVal args() As String)  
            Dim pkg As Package =  New Package()   
            Dim taskHost As TaskHost = CType(pkg.Executables.Add("STOCK:FileSystemTask"), TaskHost)  
            Dim bptargets As BreakpointTargets =  pkg.GetBreakpointTargets(taskHost,False)   
            ' Create the enumerator.  
            Dim myEnumerator As BreakpointTargetEnumerator =  bptargets.GetEnumerator()   
            Console.WriteLine("The collection contains the following values:")  
            Dim i As Integer =  0   
            While (myEnumerator.MoveNext()) &&(myEnumerator.Current <> Nothing)  
            Console.WriteLine("[{0}] {1}",i = Console.WriteLine("[{0}] {1}",i + 1  
            End While  
        End Sub  
    End Class  
End Namespace  

Esempio di output

L'insieme contiene i valori seguenti:

[0] Interruzione quando il contenitore riceve l'evento OnPreExecute

[1] Interruzione quando il contenitore riceve l'evento OnPostExecute

[2] Interruzione quando il contenitore riceve l'evento OnError

[3] Interruzione quando il contenitore riceve l'evento OnWarning

[4] Interruzione quando il contenitore riceve l'evento OnInformation

[5] Interruzione quando il contenitore riceve l'evento OnTaskFailed

[6] Interruzione quando il contenitore riceve l'evento OnProgress

[7] Interruzione quando il contenitore riceve l'evento OnQueryCancel

[8] Interruzione quando il contenitore riceve l'evento OnVariableValueChanged

[9] Interruzione quando il contenitore riceve l'evento OnCustomEvent

Commenti

Dopo aver creato un enumeratore o dopo una chiamata al metodo, il MoveNext metodo deve essere chiamato per avanzare l'enumeratore al Reset primo elemento della raccolta prima di leggere il valore della Current proprietà. In caso contrario, Current è sconosciuto e genera un'eccezione.

Current genera anche un'eccezione se l'ultima chiamata a MoveNext restituita false, che indica la fine della raccolta.

Current non sposta la posizione dell'enumeratore e le chiamate consecutive per Current restituire lo stesso oggetto finché non MoveNext viene chiamato o Reset .

Un enumeratore rimane valido finché la raccolta rimane invariata. Se le modifiche vengono apportate alla raccolta, ad esempio l'aggiunta, la modifica o l'eliminazione di elementi, l'enumeratore viene invalidato e irrecuperabile, quindi la chiamata successiva a MoveNext o Reset genera un InvalidOperationExceptionoggetto . Se la raccolta viene modificata tra MoveNext e Current, Current restituisce l'elemento impostato su, anche se l'enumeratore è già invalidato.

Si applica a