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
Zobacz także