Udostępnij przez


Właściwość DBProviderInfoEnumerator.Current

Zwraca bieżący DBProviderInfo obiekt 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 DBProviderInfo
    Get
'Użycie
Dim instance As DBProviderInfoEnumerator
Dim value As DBProviderInfo

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

Wartość właściwości

Typ: Microsoft.SqlServer.Dts.Runtime.DBProviderInfo
Bieżący DBProviderInfo 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 przed odczytywania wartości moduł wyliczający bieżącego właściwość; w przeciwnym razie bieżącego jest niezdefiniowany i wyjątek.

Bieżący również zgłasza wyjątek, jeśli wywołanie ostatniego MoveNext zwrócił false, wskazuje koniec kolekcja.

Bieżący nie przenosi pozycja modułu wyliczającego i kolejne wywołania bieżącego zwraca ten sam obiekt, aż do MoveNext lub zresetować nosi.

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.Jednak jeżeli kolekcja zostanie zmodyfikowany między wywołaniami MoveNext i bieżącego, bieżącego 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 i MoveNext metod nawigacji przez kolekcja.

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

namespace DBProvInfos_GetEnum
{
    class Program
    {
        static void Main(string[] args)
        {
            Application app = new Application();
            DBProviderInfos dbprovInfos = app.DBProviderInfos;

            //Create the Enumerator.
            DBProviderInfoEnumerator myEnumerator = dbprovInfos.GetEnumerator();
            Console.WriteLine("The collection contains the following values:");
            int i = 0;
            while ((myEnuemrator.MoveNext()) && (myEnuemrator.Current != null))
                Console.WriteLine("[{0}] {1}", i++, myEnuemrator.Current.Name);

        }
    }
}
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports Microsoft.SqlServer.Dts.Runtime
 
Namespace DBProvInfos_GetEnum
    Class Program
        Shared  Sub Main(ByVal args() As String)
            Dim app As Application =  New Application() 
            Dim dbprovInfos As DBProviderInfos =  app.DBProviderInfos 
 
            'Create the Enumerator.
            Dim myEnumerator As DBProviderInfoEnumerator =  dbprovInfos.GetEnumerator() 
            Console.WriteLine("The collection contains the following values:")
            Dim i As Integer =  0 
            While (myEnuemrator.MoveNext()) &&(myEnuemrator.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: