Ответ 1
Это также может произойти, если ваш номер версии DLL для клиента Oracle мягко отличается от ссылки, имеющейся в Visual Studio, и даже если вы установили для этой ссылки свойство "Специфическая версия" значение false.
Когда я пытаюсь подключиться к базе данных Oracle в своем приложении С#, и я пытаюсь нажать кнопку, я получаю эту ошибку:
Инициализатор типа для Oracle.DataAcces.Client.OracleConnection ' бросил исключение
Мой код для доступа к базе данных:
static string column;
static string OracleServer = "Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=something)(HOST=something)(PORT=something)) (CONNECT_DATA=(SERVICE_NAME=name)));User Id=something;Password=something;";
public void read()
{
try
{
var conn = new OracleConnection(OracleServer);
conn.Open();
OracleCommand cmd = new OracleCommand("select * from t1", conn);
OracleDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
var column1 = reader["vermogen"];
column = (column1.ToString());
listBox1.Items.Add(column);
}
conn.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
Теперь я использую ссылку Oracle.DataAccess
и как код: using Oracle.DataAccess.Client;
Приложение представляет собой приложение arcgis в приложении, и я преобразовал его в приложение формы и подключается к базе данных. Но я должен работать в приложении.
Я никогда не испытывал этой ошибки, и я не испытываю проблем с базами данных Oracle, и мне было интересно, что вызывает эту ошибку? Когда я запускаю приложение, я не получаю никаких ошибок. Но когда я нажимаю кнопки пользовательского интерфейса приложения, я получаю эту ошибку.
Что мне делать, чтобы потерять ошибку и что ее вызывает?
Это также может произойти, если ваш номер версии DLL для клиента Oracle мягко отличается от ссылки, имеющейся в Visual Studio, и даже если вы установили для этой ссылки свойство "Специфическая версия" значение false.
Это ошибка внутри dll Oracle. Я предполагаю, что вы установили dll.NET, но не установили клиент Oracle в своей системе. Можете ли вы подключиться к Oracle через клиентское программное обеспечение SQLPlus? Если он не установлен, вам необходимо установить клиентское программное обеспечение Oracle.
Измените свойства проекта. Построить раздел, Патплатно: x86
Поскольку у вас нет разрешения администратора для Oracle Client
. Добавьте это в файл App.config
:
<IPermission class="Oracle.DataAccess.Client.OraclePermission,
Oracle.DataAccess, Version=2.111.7.20, Culture=neutral,
PublicKeyToken=89b483f429c47342" version= "1" Unrestricted="true"/>