【发布时间】:2014-04-03 20:03:57
【问题描述】:
我创建了一个使用 Visual Studio 2008 和 OracleClient (OCI) 库连接到 Oracle 11g 数据库的 C# 控制台项目。此代码适用于 Windows。我将整个项目复制到 Linux 并使用 MonoDevelop 4.2.3 打开解决方案。但是在运行项目时,Database Open 调用会抛出异常
string connectionString = "Data Source=Test; User ID=UID; Password=PWD"
OracleConnection conn = new OracleConnection()
conn.ConnectionString = connectionString;
conn.Open();
例外:
System.DllNotFoundException: libclntsh.so at (wrapper 托管到本地) System.Data.OracleClient.Oci.OciCalls/OciNativeCalls:OCIEnvCreate
libclntsh.so 文件位于 /home/dbuser/instantclient_12_1 下
我已通过在 /home/dbuser/.bashrc 文件中添加以下内容来设置环境变量并重新启动系统。
出口 LD_LIBRARY_PATH=/home/dbuser/instantclient_12_1:$LD_LIBRARY_PATH
但我仍然遇到同样的错误。我找不到将库包含在 MonoDevelop 中的任何选项。
谢谢
【问题讨论】:
标签: oracle11g mono monodevelop redhat oracleclient