Partager via


OleDbEnumerator.GetEnumerator(Type) Méthode

Définition

Utilise un énumérateur OLE DB spécifique pour retourner un OleDbDataReader qui contient des informations sur les fournisseurs OLE DB actuellement installés sans exiger une instance de la classe OleDbEnumerator.

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

Paramètres

type
Type

Un Type.

Retours

OleDbDataReader qui contient des informations sur les fournisseurs OLE DB demandés, à l’aide de l’énumérateur OLE DB spécifié.

Exceptions

Le fournisseur ne prend pas en charge ISourcesRowset.

Une exception s'est produite dans le fournisseur sous-jacent.

Exemples

L’application console suivante utilise le composant MSDAENUM pour récupérer des informations sur tous les fournisseurs OLE DB et affiche les informations dans la fenêtre de console.

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

Remarques

Le lecteur retourné par cette méthode contient les colonnes suivantes, qui contiennent toutes des chaînes :

Numéro de colonne Colonne Description
0 SOURCES_NAME Nom invariant de la source de données OLE DB native ou de l’énumérateur.
1 SOURCES_PARSENAME Nom lisible par l’homme qui peut être converti en moniker à l’aide de l’interface COM native IParseDisplayName. Correspond à la colonne SOURCES_PARSENAME retournée par l’ensemble de lignes de sources OLE DB natif.
2 SOURCES_DESCRIPTION Description de la source de données OLE DB native. Correspond à la colonne SOURCES_DESCRIPTION retournée par l’ensemble de lignes de sources OLE DB natif.
3 SOURCES_TYPE Un des membres d’énumération suivants : Binder (0), DataSource_MDP (1), DataSource_TDP (2), Énumérateur (3). Elles correspondent aux valeurs retournées dans la colonne SOURCES_TYPE de l’ensemble de lignes sources OLE DB natif.
4 SOURCES_ISPARENT Applicable aux énumérateurs uniquement. Si true, indique que l’entrée s’applique au même énumérateur sur lequel GetSourcesRowset a été appelé, ce qui implique qu’il est également inclus dans la sous-énumération. Correspond à la colonne SOURCES_ISPARENT de l’ensemble de lignes de sources OLE DB natif

OLE DB fournit plusieurs composants d’énumérateur, notamment MSDAENUM, MSDASQL Enumerator, SQLNCLI Enumerator, SQLOLEDB Enumerator, etc. Pour plus d’informations sur les composants de l’énumérateur et sur leur utilisation, consultez la référence du programmeur OLE DB.

S’applique à