Udostępnij za pośrednictwem


Właściwość LogProviderInfoEnumerator.Current

Pobiera bieżący LogProviderInfo element z kolekcja.

Przestrzeń nazw:  Microsoft.SqlServer.Dts.Runtime
Zestaw:  Microsoft.SqlServer.ManagedDTS (w Microsoft.SqlServer.ManagedDTS.dll)

Składnia

'Deklaracja
Public ReadOnly Property Current As LogProviderInfo
    Get
'Użycie
Dim instance As LogProviderInfoEnumerator
Dim value As LogProviderInfo

value = instance.Current
public LogProviderInfo Current { get; }
public:
property LogProviderInfo^ Current {
    LogProviderInfo^ get ();
}
member Current : LogProviderInfo
function get Current () : LogProviderInfo

Wartość właściwości

Typ: Microsoft.SqlServer.Dts.Runtime.LogProviderInfo
Bieżący LogProviderInfo obiektu.

Uwagi

Po utworzeniu moduł wyliczający lub po wywołaniu zresetować metody, MoveNext metoda musi zostać wywołana, aby przejść do pierwszego elementu kolekcja modułu wyliczającego, zanim modułu wyliczającego można odczytać wartości Current właściwość; w przeciwnym razie Current jest niezdefiniowany i zgłasza wyjątek.

Currentrównież zgłasza wyjątek, jeśli wywołanie ostatniego MoveNext zwracane false, które wskazuje koniec kolekcja.

Currentnie przenosi pozycja modułu wyliczającego i kolejne wywołania Current zwracają ten sam obiekt, aż do MoveNext lub zresetować jest wywoływana.

Moduł wyliczający zachowuje ważność tak długo, jak długo kolekcja pozostaje niezmieniony.Jeśli zmiany zostaną wprowadzone do kolekcja, takie jak dodawanie, modyfikowanie lub usuwanie elementów, moduł wyliczający jest unieważniona i staje się odzyskane; Dlatego kolejne wywołanie MoveNext lub zresetować generuje InvalidOperationException.Jeśli kolekcja jest zmodyfikowany między wywołania MoveNext i Current, Current zwraca element, który jest zestaw , nawet jeśli moduł wyliczający został unieważniony.

Przykłady

Poniższy przykładowy kod tworzy moduł wyliczający, a następnie używa Current, MoveNext i zresetuj metod nawigacji przez kolekcja.

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

Przykładowe dane wyjściowe:

Kolekcja zawiera następujące wartości:

[0] SSIS dostawca dziennika dla plików tekstowych

[1] SSIS dostawca dziennika dlaSQL Server Profiler

[2] SSIS dostawca dziennika dla programu SQL Server

[3] SSIS zalogować dostawca dziennika zdarzeń systemu Windows

[4] SSIS dostawca dziennika dla plików XML