OleDbEnumerator.GetEnumerator(Type) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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
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.