OleDbEnumerator.GetEnumerator(Type) Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Gebruikt een specifieke OLE DB-opsomming om een OleDbDataReader met informatie te retourneren over de momenteel geïnstalleerde OLE DB-providers, zonder dat hiervoor een exemplaar van de OleDbEnumerator klasse is vereist.
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
Parameters
Retouren
Een OleDbDataReader met informatie over de aangevraagde OLE DB-providers, met behulp van de opgegeven OLE DB-enumerator.
Uitzonderingen
De provider biedt geen ondersteuning voor ISourcesRowset.
Er is een uitzondering opgetreden in de onderliggende provider.
Voorbeelden
De volgende consoletoepassing maakt gebruik van het MSDAENUM-onderdeel om informatie over alle OLE DB-providers op te halen en de informatie weer te geven in het consolevenster.
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("==================================");
}
}
}
Opmerkingen
De lezer die door deze methode wordt geretourneerd, bevat de volgende kolommen, die allemaal tekenreeksen bevatten:
| Kolomvolgorde | Column | Description |
|---|---|---|
| 0 | SOURCES_NAME | De invariante naam van de systeemeigen OLE DB-gegevensbron of -opsomming. |
| 1 | SOURCES_PARSENAME | Een door mensen leesbare naam die kan worden geconverteerd naar een moniker met behulp van de systeemeigen COM-interface IParseDisplayName. Komt overeen met de SOURCES_PARSENAME kolom die wordt geretourneerd door de rijenset met systeemeigen OLE DB-bronnen. |
| 2 | SOURCES_DESCRIPTION | Beschrijving van de systeemeigen OLE DB-gegevensbron. Komt overeen met de SOURCES_DESCRIPTION kolom die wordt geretourneerd door de rijenset met systeemeigen OLE DB-bronnen. |
| 3 | SOURCES_TYPE | Een van de volgende opsommingsleden: Binder (0), DataSource_MDP (1), DataSource_TDP (2), Enumerator (3). Deze komen overeen met de waarden die worden geretourneerd in de kolom SOURCES_TYPE van de rijenset met systeemeigen OLE DB-bronnen. |
| 4 | SOURCES_ISPARENT | Alleen van toepassing op opsommingen. Als true, geeft aan dat de vermelding van toepassing is op dezelfde enumerator waarop GetSourcesRowset is aangeroepen, wat impliceert dat deze ook is opgenomen in de sub-opsomming. Komt overeen met de kolom SOURCES_ISPARENT van de systeemeigen OLE DB-bronnenrijset |
OLE DB biedt verschillende enumeratoronderdelen, waaronder MSDAENUM, MSDASQL Enumerator, SQLNCLI Enumerator, SQLOLEDB Enumerator en andere. Zie de naslaginformatie voor OLE DB-programmeurs voor meer informatie over de enumeratoronderdelen en hoe u deze kunt gebruiken.