OleDbEnumerator.GetEnumerator(Type) Metod

Definition

Använder en specifik OLE DB-uppräknare för att returnera en OleDbDataReader som innehåller information om de för närvarande installerade OLE DB-leverantörerna, utan att kräva en instans av OleDbEnumerator klassen.

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

Parametrar

type
Type

En Type.

Returer

En OleDbDataReader som innehåller information om de begärda OLE DB-leverantörerna med den angivna OLE DB-uppräknaren.

Attribut

Undantag

Providern stöder inte ISourcesRowset.

Ett undantag har inträffat i den underliggande providern.

Exempel

Följande konsolprogram använder MSDAENUM-komponenten för att hämta information om alla OLE DB-leverantörer och visar informationen i konsolfönstret.

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

Kommentarer

Läsaren som returneras av den här metoden innehåller följande kolumner, som alla innehåller strängar:

Kolumnordning Kolumn Description
0 SOURCES_NAME Det invarianta namnet på den interna OLE DB-datakällan eller uppräknaren.
1 SOURCES_PARSENAME Ett läsbart namn som kan konverteras till en moniker med hjälp av det interna COM-gränssnittet IParseDisplayName. Motsvarar den SOURCES_PARSENAME kolumn som returneras av den interna OLE DB-källraduppsättningen.
2 SOURCES_DESCRIPTION Beskrivning av den interna OLE DB-datakällan. Motsvarar den SOURCES_DESCRIPTION kolumn som returneras av den interna OLE DB-källraduppsättningen.
3 SOURCES_TYPE En av följande uppräkningsmedlemmar: Binder (0), DataSource_MDP (1), DataSource_TDP (2), Uppräknare (3). Dessa motsvarar de värden som returneras i kolumnen SOURCES_TYPE i den interna OLE DB-källraduppsättningen.
4 SOURCES_ISPARENT Gäller endast för uppräknare. Om trueanger anger att posten gäller för samma uppräkning som GetSourcesRowset anropades på, vilket innebär att den också ingår i underuppräkningen. Motsvarar den SOURCES_ISPARENT kolumnen i den interna OLE DB-källraduppsättningen

OLE DB innehåller flera uppräkningskomponenter, inklusive MSDAENUM, MSDASQL Enumerator, SQLNCLI Enumerator, SQLOLEDB Enumerator och andra. Mer information om uppräkningskomponenterna och hur du använder dem finns i OLE DB-programmerarens referens.

Gäller för