PipelineComponentInfoEnumerator.Current Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene l'elemento PipelineComponentInfo corrente dalla raccolta.
public:
property Microsoft::SqlServer::Dts::Runtime::PipelineComponentInfo ^ Current { Microsoft::SqlServer::Dts::Runtime::PipelineComponentInfo ^ get(); };
public Microsoft.SqlServer.Dts.Runtime.PipelineComponentInfo Current { get; }
member this.Current : Microsoft.SqlServer.Dts.Runtime.PipelineComponentInfo
Public ReadOnly Property Current As PipelineComponentInfo
Valore della proprietà
Elemento PipelineComponentInfo corrente nella raccolta.
Esempio
Nell'esempio di codice seguente viene creato un enumeratore e quindi vengono utilizzati i Current metodi MoveNext per spostarsi all'interno della raccolta.
[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
Esempio di output
La raccolta contiene i valori seguenti:
[0] Unione
[1] Merge Join
[2] Ricerca
[3] Controllo
[4] Campionamento di righe
[5] Elaborazione delle dimensioni
[6] Estrazione termini
[7] Training del modello di data mining
[8] Origine OLE DB
[9] Mappa caratteri
[10] Raggruppamento fuzzy
Commenti
Dopo la creazione di un enumeratore o dopo una chiamata al Reset
metodo , è necessario chiamare il MoveNext
metodo per far avanzare l'enumeratore al primo elemento della raccolta prima che l'enumeratore possa leggere il valore della Current
proprietà; in caso contrario, Current
non è definito e viene generata un'eccezione.
Current
genera anche un'eccezione se l'ultima chiamata a MoveNext
restituisce false
, che indica la fine della raccolta.
Current
non sposta la posizione dell'enumeratore e le chiamate consecutive per restituire lo stesso oggetto fino a Current
quando MoveNext
non viene chiamato o Reset
.
Un enumeratore rimane valido finché la raccolta rimane invariata. Se vengono apportate modifiche alla raccolta, ad esempio l'aggiunta, la modifica o l'eliminazione di elementi, l'enumeratore viene invalidato e diventa irrecuperabile; pertanto, la chiamata successiva a MoveNext
o Reset
genera un'eccezione InvalidOperationException
. Tuttavia, se la raccolta viene modificata tra le chiamate a MoveNext
e Current
, Current
restituisce l'elemento su cui è impostato, anche se l'enumeratore è stato invalidato.