Langage

ConnectionEnumerator.Current Propriété

Définition

Obtient l’objet actuel ConnectionManager de la Connections collection.

public:
 property Microsoft::SqlServer::Dts::Runtime::ConnectionManager ^ Current { Microsoft::SqlServer::Dts::Runtime::ConnectionManager ^ get(); };
public Microsoft.SqlServer.Dts.Runtime.ConnectionManager Current { get; }
member this.Current : Microsoft.SqlServer.Dts.Runtime.ConnectionManager
Public ReadOnly Property Current As ConnectionManager

Valeur de propriété

Objet ConnectionManager.

Exemples

L’exemple de code suivant crée un énumérateur, puis utilise les Current méthodes et MoveNext pour naviguer dans la collection.

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

namespace ConnMgr_GetEnum_Current  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {  
            // The package is one of the SSIS Samples.  
            string mySample = @"C:\Program Files\Microsoft SQL Server\100\Samples\Integration Services\Package Samples\CalculatedColumns Sample\CalculatedColumns\CalculatedColumns.dtsx";  
            // Create the application, and load the sample.  
            Application app = new Application();  
            Package pkg = app.LoadPackage(mySample, null);  

            // Get the Connections collection from the package.  
            Connections conns = pkg.Connections;  

            //Create the Enumerator.  
            ConnectionEnumerator myEnumerator = conns.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 ConnMgr_GetEnum_Current  
    Class Program  
        Shared  Sub Main(ByVal args() As String)  
            ' The package is one of the SSIS Samples.  
            Dim mySample As String =  "C:\Program Files\Microsoft SQL Server\100\Samples\Integration Services\Package Samples\CalculatedColumns Sample\CalculatedColumns\CalculatedColumns.dtsx"   
            ' Create the application, and load the sample.  
            Dim app As Application =  New Application()   
            Dim pkg As Package =  app.LoadPackage(mySample,Nothing)   

            ' Get the Connections collection from the package.  
            Dim conns As Connections =  pkg.Connections   

            'Create the Enumerator.  
            Dim myEnumerator As ConnectionEnumerator =  conns.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  

Exemple de sortie :

La collection contient les valeurs suivantes :

[0] localhost. AdventureWorks

[1] Résumé de la transaction par Produit1

Remarques

Après la création d’un énumérateur, ou après un appel à la Reset méthode, la MoveNext méthode doit être appelée pour avancer l’énumérateur vers le premier élément de la collection avant de lire la valeur de la Current propriété ; sinon, Current elle est indéfinie et lance une exception.

Current lève également une exception si le dernier appel à MoveNext retourné false, qui indique la fin de la collection.

Currentne déplace pas la position de l’énumérateur et les appels consécutifs pour Current renvoyer le même objet tant qu’il n’est pas appelé ou MoveNext nonReset.

Un énumérateur reste valide tant que la collection reste inchangée. Si des modifications sont apportées à la collection, comme l’ajout, la modification ou la suppression d’éléments, l’énumérateur est invalidé et devient irrécupérable ; ainsi, l’appel suivant à MoveNext ou Reset lance un InvalidOperationException. Si la collection est modifiée entre appels à MoveNext et Current, Current retourne l’élément auquel elle est assignée, même si l’énumérateur a été invalidé.

S’applique à