ExecutableEnumerator.Current Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft das aktuelle Element in der Auflistung ab.
public:
property Microsoft::SqlServer::Dts::Runtime::Executable ^ Current { Microsoft::SqlServer::Dts::Runtime::Executable ^ get(); };
public Microsoft.SqlServer.Dts.Runtime.Executable Current { get; }
member this.Current : Microsoft.SqlServer.Dts.Runtime.Executable
Public ReadOnly Property Current As Executable
Eigenschaftswert
Das aktuelle Element in der Auflistung.
Beispiele
Im folgenden Codebeispiel wird dem Paket eine Bulk Insert-Aufgabe hinzugefügt, die Executables Auflistung abgerufen, eine Aufzählung erstellt und der Name mit dem TaskHostNamen angezeigt.
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.SqlServer.Dts.Runtime;
namespace Executables_API
{
class Program
{
static void Main(string[] args)
{
// Create the package and add the BulkInsertTask.
Package pkg = new Package();
Executable exec = pkg.Executables.Add("STOCK:BulkInsertTask");
// Obtain the collection.
Executables pgkExecs = pkg.Executables;
//Create the Enumerator.
ExecutableEnumerator myEnumerator = pgkExecs.GetEnumerator();
Console.WriteLine("The collection contains the following values:");
int i = 0;
Executable myExec;
TaskHost myTH;
while ((myEnumerator.MoveNext()) && (myEnumerator.Current != null))
{
myExec = (Executable)myEnumerator.Current;
myTH = (TaskHost)myExec;
Console.WriteLine("[{0}] {1}", i++, myTH.Name);
}
// Reset puts the index pointer before the beginning.
// Do not retrieve from the collection until MoveNext is called.
myEnumerator.Reset();
myEnumerator.MoveNext();
}
}
}
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports Microsoft.SqlServer.Dts.Runtime
Namespace Executables_API
Class Program
Shared Sub Main(ByVal args() As String)
' Create the package and add the BulkInsertTask.
Dim pkg As Package = New Package()
Dim exec As Executable = pkg.Executables.Add("STOCK:BulkInsertTask")
' Obtain the collection.
Dim pgkExecs As Executables = pkg.Executables
'Create the Enumerator.
Dim myEnumerator As ExecutableEnumerator = pgkExecs.GetEnumerator()
Console.WriteLine("The collection contains the following values:")
Dim i As Integer = 0
Dim myExec As Executable
Dim myTH As TaskHost
While (myEnumerator.MoveNext()) &&(myEnumerator.Current <> Nothing)
myExec = CType(myEnumerator.Current, Executable)
myTH = CType(myExec, TaskHost)
Console.WriteLine("[{0}] {1}",i = Console.WriteLine("[{0}] {1}",i + 1
End While
' Reset puts the index pointer before the beginning.
' Do not retrieve from the collection until MoveNext is called.
myEnumerator.Reset()
myEnumerator.MoveNext()
End Sub
End Class
End Namespace
Beispielausgabe:
Die Auflistung enthält die folgenden Werte:
[0] {C435F0C7-97E8-4DCC-A0FF-C6C805D9F64E}
Hinweise
Nachdem ein Aufzählungsator erstellt wurde oder nach einem Aufruf der Reset
Methode aufgerufen werden muss, muss die MoveNext
Methode aufgerufen werden, um das erste Element der Auflistung zu durchlaufen, bevor der Enumerationerator den Wert der Current Eigenschaft lesen kann; andernfalls Current wird eine Ausnahme ausgelöst.
Current Löst auch eine Ausnahme aus, wenn der letzte Aufruf zurückgegeben MoveNext
wird false
, der das Ende der Auflistung angibt.
Current verschiebt die Position des Aufzählungsators nicht, und aufeinander folgende Aufrufe, um Current dasselbe Objekt zurückzugeben, bis eine MoveNext
oder Reset
die aufgerufen wird.
Ein Enumerator bleibt gültig, solange die Auflistung unverändert bleibt. Wenn Änderungen an der Auflistung vorgenommen werden, z. B. Hinzufügen, Ändern oder Löschen von Elementen, wird der Aufzählungsator ungültig und kann nicht wiederhergestellt werden; Der nächste Aufruf oder MoveNext
Reset
löst daher eine Ausnahme aus. Wenn die Auflistung jedoch zwischen aufrufen MoveNext
und Currentgeändert wird, Current gibt das Element zurück, auf das sie festgelegt ist, auch wenn der Aufzählungsator ungültig wurde.