Udostępnij przez


Właściwość PipelineComponentInfoEnumerator.Current

Pobiera bieżący PipelineComponentInfo element z kolekcja.

Przestrzeń nazw:  Microsoft.SqlServer.Dts.Runtime
Zestaw:  Microsoft.SqlServer.ManagedDTS (w Microsoft.SqlServer.ManagedDTS.dll)

Składnia

'Deklaracja
Public ReadOnly Property Current As PipelineComponentInfo
    Get
'Użycie
Dim instance As PipelineComponentInfoEnumerator
Dim value As PipelineComponentInfo

value = instance.Current
public PipelineComponentInfo Current { get; }
public:
property PipelineComponentInfo^ Current {
    PipelineComponentInfo^ get ();
}
member Current : PipelineComponentInfo
function get Current () : PipelineComponentInfo

Wartość właściwości

Typ: Microsoft.SqlServer.Dts.Runtime.PipelineComponentInfo
Bieżący PipelineComponentInfo elementu kolekcja.

Uwagi

Po utworzeniu moduł wyliczający lub po wywołaniu zresetować metody, MoveNext metoda musi zostać wywołana, aby przejść do pierwszego elementu kolekcja modułu wyliczającego, zanim modułu wyliczającego można odczytać wartości bieżącego właściwość; w przeciwnym razie bieżącego jest niezdefiniowany i wyjątek.

Bieżący również zgłasza wyjątek, jeśli wywołanie ostatniego MoveNext zwrócił false, wskazuje koniec kolekcja.

Bieżący nie przenosi pozycja modułu wyliczającego i kolejne wywołania bieżącego zwraca ten sam obiekt, aż do MoveNext lub zresetować nosi.

Moduł wyliczający zachowuje ważność tak długo, jak długo kolekcja pozostaje niezmieniony.Jeśli zmiany zostaną wprowadzone do kolekcja, takie jak dodawanie, modyfikowanie lub usuwanie elementów, moduł wyliczający jest unieważniona i staje się odzyskane; Dlatego kolejne wywołanie MoveNext lub zresetować generuje InvalidOperationException.Jednak jeżeli kolekcja zostanie zmodyfikowany między wywołaniami MoveNext i bieżącego, bieżącego zwraca element, który jest zestaw , nawet, jeśli moduł wyliczający został unieważniony.

Przykłady

Poniższy przykładowy kod tworzy moduł wyliczający, a następnie używa Current i metody MoveNext przejść przez kolekcja.

[C#]

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

namespace TaskInfos_Item
{
    class Program
    {
        static void Main(string[] args)
        {
            Application app = new Application();
            PipelineComponentInfos pInfos = app.PipelineComponentInfos;

            //Create the Enumerator.
            PipelineComponentInfoEnumerator myEnumerator= pInfos.GetEnumerator();
            Console.WriteLine("The collection contains the following values:");
            int i = 0;
            while ((myEnuemrator.MoveNext()) && (myEnuemrator.Current != null))
                Console.WriteLine("[{0}] {1}", i++, myEnuemrator.Current.Name);
        }
    }
}
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports Microsoft.SqlServer.Dts.Runtime
 
Namespace TaskInfos_Item
    Class Program
        Shared  Sub Main(ByVal args() As String)
            Dim app As Application =  New Application() 
            Dim pInfos As PipelineComponentInfos =  app.PipelineComponentInfos 
 
            'Create the Enumerator.
            Dim myEnumeratorAs PipelineComponentInfoEnumerator =  pInfos.GetEnumerator() 
            Console.WriteLine("The collection contains the following values:")
            Dim i As Integer =  0 
            While (myEnuemrator.MoveNext()) &&(myEnuemrator.Current <> Nothing)
            Console.WriteLine("[{0}] {1}",i = Console.WriteLine("[{0}] {1}",i + 1
            End While
        End Sub
    End Class
End Namespace

Przykładowe dane wyjściowe:

Kolekcja zawiera następujące wartości:

Scalanie [0]

[1] Scal sprzężenia

[2] Wyszukiwanie

[3] Inspekcji

[4] Wiersza pobierania próbek

[5]. Przetwarzania wymiaru:

[6]. Ekstrakcja termin

[7]. Szkolenie górnictwo modelu danych

[8] OLE DB źródła

[9]. Tablica znaków

[10] Grupowanie rozmyte