OleDbEnumerator.GetEnumerator(Type) Methode

Definition

Verwendet einen bestimmten OLE DB-Enumerator, um einen OleDbDataReader Wert zurückzugeben, der Informationen zu den aktuell installierten OLE DB-Anbietern enthält, ohne dass eine Instanz der OleDbEnumerator Klasse erforderlich ist.

public:
 static System::Data::OleDb::OleDbDataReader ^ GetEnumerator(Type ^ type);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("OleDbConnection is not AOT-compatible.")]
public static System.Data.OleDb.OleDbDataReader GetEnumerator(Type type);
public static System.Data.OleDb.OleDbDataReader GetEnumerator(Type type);
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("OleDbConnection is not AOT-compatible.")>]
static member GetEnumerator : Type -> System.Data.OleDb.OleDbDataReader
static member GetEnumerator : Type -> System.Data.OleDb.OleDbDataReader
Public Shared Function GetEnumerator (type As Type) As OleDbDataReader

Parameter

type
Type

Ein Type.

Gibt zurück

Eine OleDbDataReader , die Informationen zu den angeforderten OLE DB-Anbietern enthält, mithilfe des angegebenen OLE DB-Enumerationsmoduls.

Attribute

Ausnahmen

Der Anbieter unterstützt ISourcesRowset nicht.

Im zugrunde liegenden Anbieter ist eine Ausnahme aufgetreten.

Beispiele

Die folgende Konsolenanwendung verwendet die MSDAENUM-Komponente, um Informationen zu allen OLE DB-Anbietern abzurufen und die Informationen im Konsolenfenster anzuzeigen.

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("==================================");  
   }  
 }  
}  

Hinweise

Der Leser, der von dieser Methode zurückgegeben wird, enthält die folgenden Spalten, die alle Zeichenfolgen enthalten:

Spaltenindex Column Description
0 SOURCES_NAME Der invariante Name der systemeigenen OLE DB-Datenquelle oder Enumerator.
1 SOURCES_PARSENAME Ein lesbarer Name, der mithilfe der systemeigenen COM-Schnittstelle IParseDisplayName in einen Moniker konvertiert werden kann. Entspricht der SOURCES_PARSENAME Spalte, die vom systemeigenen OLE DB-Quellen-Rowset zurückgegeben wird.
2 SOURCES_DESCRIPTION Beschreibung der systemeigenen OLE DB-Datenquelle. Entspricht der SOURCES_DESCRIPTION Spalte, die vom systemeigenen OLE DB-Quellen-Rowset zurückgegeben wird.
3 SOURCES_TYPE Eines der folgenden Enumerationselemente: Binder (0), DataSource_MDP (1), DataSource_TDP (2), Enumerator (3). Diese entsprechen den Werten, die in der SOURCES_TYPE Spalte des systemeigenen OLE DB-Quellen-Rowsets zurückgegeben werden.
4 SOURCES_ISPARENT Gilt nur für Enumerationen. Wenn true, gibt an, dass der Eintrag auf denselben Enumerationsator angewendet wird, für den GetSourcesRowset aufgerufen wurde, was bedeutet, dass er auch in der Unterenumeration enthalten ist. Entspricht der SOURCES_ISPARENT Spalte des systemeigenen OLE DB-Quellen-Rowsets.

OLE DB stellt mehrere Enumerationskomponenten bereit, darunter MSDAENUM, MSDASQL Enumerator, SQLNCLI Enumerator, SQLOLEDB Enumerator und andere. Weitere Informationen zu den Enumerationskomponenten und deren Verwendung finden Sie in der OLE DB-Programmierreferenz.

Gilt für: