OleDbEnumerator.GetEnumerator(Type) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Używa określonego modułu wyliczającego OLE DB, aby zwrócić element OleDbDataReader zawierający informacje o aktualnie zainstalowanych dostawcach OLE DB bez konieczności wystąpienia OleDbEnumerator klasy.
public:
static System::Data::OleDb::OleDbDataReader ^ GetEnumerator(Type ^ type);
public static System.Data.OleDb.OleDbDataReader GetEnumerator (Type type);
static member GetEnumerator : Type -> System.Data.OleDb.OleDbDataReader
Public Shared Function GetEnumerator (type As Type) As OleDbDataReader
Parametry
Zwraca
Element OleDbDataReader zawierający informacje o żądanych dostawcach OLE DB przy użyciu określonego modułu wyliczającego OLE DB.
Wyjątki
Dostawca nie obsługuje protokołu ISourcesRowset.
Wystąpił wyjątek u dostawcy bazowego.
Przykłady
Poniższa aplikacja konsolowa używa składnika MSDAENUM do pobierania informacji o wszystkich dostawcach OLE DB i wyświetla informacje w oknie konsoli.
Imports System.Data
Imports System.Data.OleDb
Module Module1
Sub Main()
Dim enumerator As New OleDbEnumerator
Dim reader As OleDbDataReader = _
OleDbEnumerator.GetEnumerator(Type.GetTypeFromProgID("MSDAENUM"))
DisplayData(reader)
Console.WriteLine("Press any key to continue.")
Console.ReadKey()
End Sub
Private Sub DisplayData(ByVal reader As OleDbDataReader)
While reader.Read()
For i As Integer = 0 To reader.FieldCount - 1
Console.WriteLine("{0} = {1}", _
reader.GetName(i), reader.GetValue(i))
Next
Console.WriteLine("==================================")
End While
End Sub
End Module
using System;
using System.Data;
using System.Data.OleDb;
class Program
{
static void Main()
{
OleDbDataReader reader =
OleDbEnumerator.GetEnumerator(Type.GetTypeFromProgID("MSDAENUM"));
DisplayData(reader);
Console.WriteLine("Press any key to continue.");
Console.ReadKey();
}
static void DisplayData(OleDbDataReader reader)
{
while (reader.Read())
{
for (int i = 0; i < reader.FieldCount; i++)
{
Console.WriteLine("{0} = {1}",
reader.GetName(i), reader.GetValue(i));
}
Console.WriteLine("==================================");
}
}
}
Uwagi
Czytnik zwrócony przez tę metodę zawiera następujące kolumny, z których wszystkie zawierają ciągi:
Porządkowa kolumn | Kolumna | Opis |
---|---|---|
0 | SOURCES_NAME | Niezmienna nazwa natywnego źródła danych OLE DB lub modułu wyliczającego. |
1 | SOURCES_PARSENAME | Nazwa czytelna dla człowieka, którą można przekonwertować na moniker przy użyciu natywnego interfejsu COM IParseDisplayName. Odpowiada kolumnie SOURCES_PARSENAME zwróconej przez natywny zestaw wierszy źródeł OLE DB. |
2 | SOURCES_DESCRIPTION | Opis natywnego źródła danych OLE DB. Odpowiada kolumnie SOURCES_DESCRIPTION zwróconej przez natywny zestaw wierszy źródeł OLE DB. |
3 | SOURCES_TYPE | Jeden z następujących elementów członkowskich wyliczenia: Binder (0), DataSource_MDP (1), DataSource_TDP (2), Moduł wyliczający (3). Odpowiadają one wartościom zwracanym w kolumnie SOURCES_TYPE natywnego zestawu wierszy źródeł OLE DB. |
4 | SOURCES_ISPARENT | Dotyczy tylko modułów wyliczanych. Jeśli true element wskazuje, że wpis ma zastosowanie do tego samego modułu wyliczającego, na którym wywołano metodę GetSourcesRowset , co oznacza, że jest on również uwzględniony w podnumeracji. Odpowiada kolumnie SOURCES_ISPARENT natywnego zestawu wierszy źródeł OLE DB |
Ole DB udostępnia kilka składników wyliczania, w tym MSDAENUM, MSDASQL Enumerator, SQLNCLI Enumerator, SQLOLEDB Enumerator i inne. Aby uzyskać więcej informacji na temat składników modułu wyliczającego i sposobu ich używania, zobacz Dokumentację programisty OLE DB.