OleDbEnumerator.GetRootEnumerator メソッド

定義

OleDbDataReader クラスのインスタンスを必要とせずに、現在インストールされている OLE DB プロバイダーに関する情報を含むOleDbEnumeratorを返します。

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

返品

表示されている OLE DB プロバイダーに関する情報を含む OleDbDataReader

属性

例外

プロバイダーは ISourcesRowset をサポートしていません。

基になるプロバイダーで例外が発生しました。

次のコンソール アプリケーションは、表示されているすべての OLE DB プロバイダーに関する情報を取得し、コンソール ウィンドウに情報を表示します。

Imports System.Data  
Imports System.Data.OleDb  

Module Module1  

  Sub Main()  
    Dim enumerator As New OleDbEnumerator  
    Dim reader As OleDbDataReader = OleDbEnumerator.GetRootEnumerator()  

    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.GetRootEnumerator();  

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

注釈

このメソッドによって返されるリーダーには次の列が含まれ、そのすべてが文字列を含みます。

列序数 Column Description
0 SOURCES_NAME ネイティブ OLEDB データ ソースまたは列挙子の不変名。
1 SOURCES_PARSENAME ネイティブ COM インターフェイス IParseDisplayName を使用してモニカーに変換できる、人間が判読できる名前。 ネイティブ OLE DB ソース行セットによって返されるSOURCES_PARSENAME列に対応します。
2 SOURCES_DESCRIPTION ネイティブ OLE DB データ ソースの説明。 ネイティブ OLE DB ソース行セットによって返されるSOURCES_DESCRIPTION列に対応します。
3 SOURCES_TYPE 次のいずれかの列挙メンバー: Binder (0)、DataSource_MDP (1)、DataSource_TDP (2)、列挙子 (3)。 これらは、ネイティブ OLE DB ソース行セットのSOURCES_TYPE列に返される値に対応します。
4 SOURCES_ISPARENT 列挙子にのみ適用されます。 true場合は、エントリが GetSourcesRowset が呼び出されたのと同じ列挙子に適用されることを示します。これは、エントリがサブ列挙にも含まれていることを意味します。 ネイティブ OLE DB ソース行セットのSOURCES_ISPARENT列に対応します
5 SOURCES_CLSID ネイティブ COM インターフェイス IParseDisplayName を使用してモニカーに変換できる、人間が判読できる名前。 ネイティブ OLE DB ソース行セットによって返されるSOURCES_CLSID列に対応します。

適用対象