当我尝试连接到我的C#应用程序中的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数据库没有经验,我想知道是什么导致了这个错误?当我运行应用程序时,我没有得到任何错误。但是,当我单击应用程序的用户界面按钮时,我收到此错误。
我该怎么做才能丢失错误以及导致错误的原因?
答案 0 :(得分:8)
如果您的Oracle客户端DLL版本号与Visual Studio中的引用轻微不同,即使您将该引用的“特定版本”属性设置为false,也会发生这种情况。
答案 1 :(得分:6)
这是Oracle dll中的错误。我的猜测是你安装了.NET dll但没有在你的系统上安装Oracle客户端。您可以通过SQLPlus客户端软件连接到Oracle吗?如果未安装,则需要安装Oracle客户端软件。
答案 2 :(得分:4)
更改项目属性。 构建部分,Palatform:x86
答案 3 :(得分:0)
由于您没有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"/>