Share via


LogProviderInfoEnumerator.Current Propriété

Définition

Obtient l'élément LogProviderInfo actuel de la collection.

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

Valeur de propriété

LogProviderInfo

Objet LogProviderInfo actuel.

Exemples

L’exemple de code suivant crée un énumérateur, puis utilise les Currentméthodes , MoveNext et Reset pour parcourir la collection.

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

namespace LogProvInfoProperties  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {  
        Application app = new Application();  
        LogProviderInfos infos = app.LogProviderInfos;  

        //Create the Enumerator.  
        LogProviderInfoEnumerator myEnumerator = infos.GetEnumerator();  
        Console.WriteLine("The collection contains the following values:");  
        //Iterate over the collection using the indexer instead of foreach.  
        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 LogProvInfoProperties  
    Class Program  
        Shared  Sub Main(ByVal args() As String)  
            Dim app As Application =  New Application()   
            Dim infos As LogProviderInfos =  app.LogProviderInfos   

            'Create the Enumerator.  
            Dim myEnumerator As LogProviderInfoEnumerator =  infos.GetEnumerator()   
            Console.WriteLine("The collection contains the following values:")  
            'Iterate over the collection using the indexer instead of foreach.  
            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] Fournisseur d’informations SSIS pour les fichiers texte

[1] Fournisseur d’informations SSIS pour SQL Server Profiler

[2] Fournisseur d’informations SSIS pour SQL Server

[3] Fournisseur d’informations SSIS pour le journal des événements Windows

[4] Fournisseur d’informations SSIS pour les fichiers XML

Remarques

Une fois qu’un énumérateur est créé ou après un appel à la Reset méthode, la MoveNext méthode doit être appelée pour faire passer l’énumérateur au premier élément de la collection avant que l’énumérateur puisse lire la valeur de la Current propriété ; sinon, Current elle n’est pas définie et lève une exception.

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

Current ne déplace pas la position de l’énumérateur et les appels consécutifs pour Current retourner le même objet tant que l’un MoveNext ou Reset l’autre n’est pas appelé.

Un énumérateur reste valide aussi longtemps que la collection demeure inchangée. Si des modifications sont apportées à la collection, telles que 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 lève un InvalidOperationException. Si la collection est modifiée entre les appels à MoveNext et Current, Current retourne l’élément sur lequel il est défini, même si l’énumérateur a été invalidé.

S’applique à