Можете ли вы изменить, какой поставщик OracleConnection использует по умолчанию? - PullRequest
0 голосов
/ 05 июля 2019

У меня есть приложение, которое использует System.Data.OracleClient.OracleConnection (да, я знаю, что оно устарело) без указания поставщика.По-видимому, по умолчанию используется MSDORA.Могу ли я сменить провайдера, не добавляя провайдера в строку подключения?например, в файле app.config или в настройках компьютера?

1 Ответ

0 голосов
/ 05 июля 2019

Более оптимальным вариантом будет использование ODP.NET

Чтобы реализовать это, начните с добавления ссылки на Oracle.DataAccess. Затем добавьте следующие две строки перед вашим публичным объявлением:

using Oracle.DataAccess.Client; // ODP.NET Oracle managed provider
using Oracle.DataAccess.Types; 

Это должно позволить вам использовать ODP.NET следующим образом:

string oradb = "Data Source=mysrc;User Id=id;Password=password;";
OracleConnection conn = new OracleConnection(oradb);  // C#
conn.Open(); 
OracleCommand cmd = new OracleCommand();
cmd.Connection = conn;
cmd.CommandText = "my query";
cmd.CommandType = CommandType.Text; 
OracleDataReader dr = cmd.ExecuteReader();
dr.Read();
label1.Text = dr.GetString(0); //Assuming the label already exists
conn.Dispose();

Для получения дополнительной помощи, попробуйте следовать официальному руководству Oracle, найденному здесь

...