System.InvalidOperationException: 未在本地计算机上注册“OraOLEDB.Oracle”提供程序。 ---> System.Data.OleDb.OleDbException: 没有可用的错误信息: REGDB_E_CLASSNOTREG(0x80040154)。
--- --- ---
at System.Data.OleDb.OleDbConnection.CreateProviderError(Int32 hr)
at System.Data.OleDb.OleDbConnection.CreateProvider(OleDbConnectionString constr)
at System.Data.OleDb.OleDbConnection.Open()
at PDA_Service.GetData.UserLogin(String user_id, String password) in d:\pda\pda_service\getdata.asmx.cs:line 215
目前服务器环境为:ORACLE92+WINDOWS2003+IIS,
.NET版本为 1.1.4322.573。
经测试,是程序调用ORACLE的OLEDB出错。基本可以确定以下几点:
1。WEBSERVICE程序运行无误,调用的组件版本与.NET环境无冲突。
2。ORACLE客户端安装正确,并且包含了OLEDB组件。接口服务器修改了ORACLE_HOME环境变量并不影响使用。
3。ORACLE_HOME目录,E:\Oracle\Ora92, 对Authenticated Users、ASP.NET, IWAM_ and IUSR_ 帐户,都赋予允许读、执行权限,并在“高级”中保证该目录的子目录、文件都继承这些属性。
------解决方案--------------------------------------------------------
用System.Data.OracleClient,不要用OleDB
------解决方案--------------------------------------------------------
把在ASP.net里引用Oracle的那个DLL文件拷到web\Bin下。试试。
------解决方案--------------------------------------------------------
安装oracl客户端
------解决方案--------------------------------------------------------
顶!
------解决方案--------------------------------------------------------
你添加System.Data.OracleClient.dll的引用了吗?
------解决方案--------------------------------------------------------
加入ASP。NET C#群吧,群号是: 1873156
------解决方案--------------------------------------------------------
恭喜