OracleDataSourceCollectionクラス
OracleDataSourceCollectionは、ODP.NETのOracleデータベースへの接続用ネットワーク・サービス名(TNS)エントリの追加および削除をサポートしています。
クラスの継承
System.Object
Oracle.ManagedDataAccess.Client.OracleDataSourceCollection
宣言
// C# public sealed class OracleDataSourceCollection
要件
| プロバイダ | ODP.NET Core |
|---|---|
|
アセンブリ |
|
|
ネームスペース |
|
|
.NET Framework |
4.6.1以降 |
|
.NET Core |
2.1以降 |
スレッド安全性
パブリック静的メソッドはスレッドセーフですが、インスタンス・メソッドではスレッド安全性は保証されません。
例
using System;
using Oracle.ManagedDataAccess.Client;
namespace NetCoreApp
{
class DataSourcesExample
{
static void Main(string[] args)
{
// Example to configure Data Sources for the ODP.NET Core provider.
// Add data source through Add method on OracleDataSourceCollection
OracleConfiguration.OracleDataSources.Add("orcl1", "(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=host1)(PORT=1234))(CONNECT_DATA=(SERVICE_NAME=oracle)(SERVER=dedicated)))");
// Add data source through indexer method on OracleDataSourceCollection
OracleConfiguration.OracleDataSources["orcl2"] =
"(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=host1)(PORT=1234))(CONNECT_DATA=(SERVICE_NAME=oracle)(SERVER=dedicated)))";
// Get number of data sources configured
int numDataSources = OracleConfiguration.OracleDataSources.Count;
// Get OracleDataSourceCollection object
OracleDataSourceCollection dsColl = OracleConfiguration.OracleDataSources;
// Add server through Add method on OracleDataSourceCollection
dsColl.Add("orcl3", "(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=host3)(PORT=1234))(CONNECT_DATA=(SERVICE_NAME=oracle)(SERVER=dedicated)))");
// Add server through indexer method on OracleDataSourceCollection
dsColl["orcl4"] = "(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=host4)(PORT=1234))(CONNECT_DATA=(SERVICE_NAME=oracle)(SERVER=dedicated)))";
// Remove a data source
OracleConfiguration.OracleDataSources.Remove("db2");
// Get number of data sources configured
numDataSources = OracleConfiguration.OracleDataSources.Count;
// Get value corresponding to a data source.
string dsVal = OracleConfiguration.OracleDataSources["db1"];
OracleConnection orclCon = null;
try
{
// Open a test connection
orclCon = new OracleConnection("user id=scott; password=tiger; data source=orcl3");
orclCon.Open();
orclCon.Close();
}
catch (OracleException ex)
{
Console.WriteLine(ex);
}
finally
{
// Close the connection
if (null != orclCon)
orclCon.Close();
}
}
}
}