C# 使用c从.net应用程序连接到远程oracle数据库#

C# 使用c从.net应用程序连接到远程oracle数据库#,c#,.net,asp.net-mvc,entity-framework,oracle11g,C#,.net,Asp.net Mvc,Entity Framework,Oracle11g,我正在开发一个使用远程“Oracle”数据库的应用程序。但我面临的问题是如何连接到该数据库。我已按照以下步骤连接到名为“rudresh”的Oracle数据库,该数据库位于IP地址为“10.10.10.10”的服务器中(错误的IP,因为我无法共享确切的IP) 但实际上,在使用conn.Open()打开连接时,其引发异常“System.Data.OracleClient需要Oracle客户端软件版本8.1.7或更高版本”,但我的Oracle版本是11g。任何人,请告诉我我做错了什么,或者我是否需要对

我正在开发一个使用远程“Oracle”数据库的应用程序。但我面临的问题是如何连接到该数据库。我已按照以下步骤连接到名为“rudresh”的Oracle数据库,该数据库位于IP地址为“10.10.10.10”的服务器中(错误的IP,因为我无法共享确切的IP)


但实际上,在使用conn.Open()打开连接时,其引发异常“System.Data.OracleClient需要Oracle客户端软件版本8.1.7或更高版本”,但我的Oracle版本是11g。任何人,请告诉我我做错了什么,或者我是否需要对服务器进行任何更改?

这可能是一个安全问题。检查您在oracle客户端文件夹中的权限

另一个可能的原因(IIRC)是错误的oracle客户端库(即在32位设置上使用64位版本)


(当然,这是假设您安装了Oracle客户端)

我认为Oracle客户端本身不能独立工作。您是否下载了?。安装时,尝试为不同的安装指定不同的主文件夹,例如32bithome或64bithome。首先,您可以尝试32位Home(即使在64位计算机上,如果它不起作用,也可以尝试创建64位Home)。

您好,我在本地安装了oracle客户端,但仍然收到相同的错误。通过sql pluss,我可以连接到服务器数据库,但不能连接到应用程序。这听起来确实像是一个安全问题。您是否可以访问Oracle客户端文件夹/您是否具有读取和执行权限?我还编辑了我的帖子,提出了进一步的建议。
string oradb = "Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=10.10.10.10)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=rudresh)));User Id=system;Password=system_db;";
OracleConnection conn = new OracleConnection(oradb);
try
{
    conn.Open();
    string sql = "SELECT * FROM X96TUSER"; // C#
    OracleCommand cmd = new OracleCommand(sql, conn);
    cmd.CommandType = CommandType.Text;
    OracleDataReader dr = cmd.ExecuteReader(); // C#
    dr.Read();
    string test = dr.GetString(0).ToString();
}