ConfigurationEnumerator.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 Configuration-Objekt aus der Auflistung ab.
public:
property Microsoft::SqlServer::Dts::Runtime::Configuration ^ Current { Microsoft::SqlServer::Dts::Runtime::Configuration ^ get(); };
public Microsoft.SqlServer.Dts.Runtime.Configuration Current { get; }
member this.Current : Microsoft.SqlServer.Dts.Runtime.Configuration
Public ReadOnly Property Current As Configuration
Eigenschaftswert
Das aktuelle Element in der Auflistung.
Beispiele
Im folgenden Codebeispiel wird ein ConfigurationEnumerator, dann über die Auflistung verteilt, das Konfigurationsnamen anzeigt.
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.SqlServer.Dts.Runtime;
namespace Configurations_API
{
class Program
{
static void Main(string[] args)
{
Package p = new Package();
Configuration conf1 = p.Configurations.Add();
conf1.ConfigurationString = "Conf1 Configuration String";
conf1.ConfigurationType = DTSConfigurationType.EnvVariable;
conf1.Description = "Some description for Conf1 configuration";
conf1.Name = "Conf1";
conf1.PackagePath = "A Variable Name in configuration Conf1";
Configuration conf2 = p.Configurations.Add();
conf2.ConfigurationString = "Conf2 Configuration String";
conf2.ConfigurationType = DTSConfigurationType.ConfigFile;
conf2.Description = "Some description for Conf2 configuration";
conf2.Name = "Conf2";
conf2.PackagePath = "A Variable Name in configuration Conf2";
Configuration conf3 = p.Configurations.Add();
conf3.ConfigurationString = "Conf3 Configuration String2";
conf3.ConfigurationType = DTSConfigurationType.RegEntry;
conf3.Description = "Conf3 description for Conf3 configuration2";
conf3.Name = "Conf3";
conf3.PackagePath = "A Variable Name in configuration Conf3";
Configurations pkgConfigs = p.Configurations;
ConfigurationEnumerator myEnumerator = pkgConfigs.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.Name);
}
}
}
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports Microsoft.SqlServer.Dts.Runtime
Namespace Configurations_API
Class Program
Shared Sub Main(ByVal args() As String)
Dim p As Package = New Package()
Dim conf1 As Configuration = p.Configurations.Add()
conf1.ConfigurationString = "Conf1 Configuration String"
conf1.ConfigurationType = DTSConfigurationType.EnvVariable
conf1.Description = "Some description for Conf1 configuration"
conf1.Name = "Conf1"
conf1.PackagePath = "A Variable Name in configuration Conf1"
Dim conf2 As Configuration = p.Configurations.Add()
conf2.ConfigurationString = "Conf2 Configuration String"
conf2.ConfigurationType = DTSConfigurationType.ConfigFile
conf2.Description = "Some description for Conf2 configuration"
conf2.Name = "Conf2"
conf2.PackagePath = "A Variable Name in configuration Conf2"
Dim conf3 As Configuration = p.Configurations.Add()
conf3.ConfigurationString = "Conf3 Configuration String2"
conf3.ConfigurationType = DTSConfigurationType.RegEnTry
conf3.Description = "Conf3 description for Conf3 configuration2"
conf3.Name = "Conf3"
conf3.PackagePath = "A Variable Name in configuration Conf3"
Dim pkgConfigs As Configurations = p.Configurations
Dim myEnumerator As ConfigurationEnumerator = pkgConfigs.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
Beispielausgabe:
Die Auflistung enthält die folgenden Werte:
[0] Conf1
[1] Conf2
[2] Conf3
Hinweise
Nachdem ein Aufzählungszeichen erstellt wurde, oder nachdem ein Aufruf Reset
der Methode aufgerufen wurde, muss die MoveNext
Methode aufgerufen werden, um das Aufzählungszeichen auf das erste Element der Auflistung zu aktualisieren, bevor der Wert der Current Eigenschaft gelesen wird. Andernfalls Current wird eine Ausnahme ausgelöst.
Current Löst auch eine Ausnahme aus, wenn der letzte Aufruf zurückgegeben wird MoveNext
false
, der das Ende der Auflistung angibt.
Current verschiebt die Position des Enumerators nicht, und fortlaufende Aufrufe, um dasselbe Objekt zurückzugeben, bis sie entweder MoveNext
oder Reset
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; So wird der nächste Aufruf an MoveNext
oder Reset
löst eine InvalidOperationException
. Wenn die Auflistung jedoch zwischen MoveNext
aufrufen und Currentgeändert wird, Current gibt das Element zurück, auf das er festgelegt ist, auch wenn der Aufzählerator ungültig wurde.