OracleDataSourceEnumeratorオブジェクトにより、アプリケーションで接続先のデータ・ソースのコレクションを包括的に取得できます。
ADO.NET 2.0準拠のODP.NETでのみサポート
クラスの継承
System.Object
System.DbDataSourceEnumerator
Oracle.DataAccess.Client.OracleDataSourceEnumerator
宣言
// C# public sealed class OracleDataSourceEnumerator : DbDataSourceEnumerator
スレッド安全性
パブリック静的メソッドはスレッドセーフですが、インスタンス・メソッドではスレッド安全性は保証されません。
例
// C#
using System;
using System.Data;
using System.Data.Common;
using Oracle.DataAccess.Client;
class DataSourceEnumSample
{
static void Main()
{
string ProviderName = "Oracle.DataAccess.Client";
DbProviderFactory factory = DbProviderFactories.GetFactory(ProviderName);
if (factory.CanCreateDataSourceEnumerator)
{
DbDataSourceEnumerator dsenum = factory.CreateDataSourceEnumerator();
DataTable dt = dsenum.GetDataSources();
// Print the first column/row entry in the DataTable
Console.WriteLine(dt.Columns[0] + " : " + dt.Rows[0][0]);
Console.WriteLine(dt.Columns[1] + " : " + dt.Rows[0][1]);
Console.WriteLine(dt.Columns[2] + " : " + dt.Rows[0][2]);
Console.WriteLine(dt.Columns[3] + " : " + dt.Rows[0][3]);
Console.WriteLine(dt.Columns[4] + " : " + dt.Rows[0][4]);
}
else
Console.Write("Data source enumeration is not supported by provider");
}
}
要件
ネームスペース: Oracle.DataAccess.Client
アセンブリ: Oracle.DataAccess.dll
Microsoft .NET Frameworkバージョン: 2.0
OracleDataSourceEnumeratorメンバーは、次の各表にリストしています。
OracleDataSourceEnumeratorパブリック・メソッド
OracleDataSourceEnumeratorパブリック・メソッドのリストを、表7-10に示します。
表7-10 OracleDataSourceEnumeratorメソッド
| メソッド | 説明 |
|---|---|
|
|
OracleDataSourceEnumerator静的メソッドのリストを、表7-11に示します。
表7-11 OracleDataSourceEnumeratorメソッド
| メソッド | 説明 |
|---|---|
|
|
このメソッドは、DataTableオブジェクトを、tnsnames.oraファイル内のすべてのTNS別名エントリに関する情報とともに戻します。
宣言
// C# public override DataTable GetDataSources();
戻り値
DataTableオブジェクト
備考
このメソッドは、tnsnames.oraファイルにある各TNS別名エントリに対するDataTableオブジェクトを戻します。
tnsnames.oraファイルが見つからない場合は、空のDataTableオブジェクトが戻されます。
各行ごとに次の列が戻されますが、InstanceName列のみは移入済です。
InstanceName(型: System.String)
ServerName(型: System.String)
ServiceName(型: System.String)
Protocol(型: System.String)
Port(型: System.String)