我在一台winxp的机器上安装了oracle 9.2.0.1 企业服务器,然后又使用vs.net c#2003开发一数据库程序,我用的是oracledataadapter.fill(),但系统报错,而我在另一台WIN2003上安装ORACLE的客户端做同样的试验就没问题.出错症状如下:
“/DuBan”应用程序中的服务器错误。
--------------------------------------------------------------------------------
无法加载 DLL (oci.dll)。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.DllNotFoundException: 无法加载 DLL (oci.dll)。
源错误:
行 28: //oracleDataAdapter1.Fill(dataSet21);
行 29: //DataGrid1.DataBind();
行 30: oracleDataAdapter1.Fill(dataSet11);
行 31: DataGrid1.DataBind();
行 32: }
源文件: c:/inetpub/wwwroot/duban/index1.aspx.cs 行: 30
堆栈跟踪:
[DllNotFoundException: 无法加载 DLL (oci.dll)。]
System.Data.OracleClient.DBObjectPool.GetObject(Object owningObject, Boolean& isInTransaction)
System.Data.OracleClient.OracleConnectionPoolManager.GetPooledConnection(String encryptedConnectionString, OracleConnectionString options, OracleConnection owningObject, Boolean& isInTransaction)
System.Data.OracleClient.OracleConnection.OpenInternal(OracleConnectionString parsedConnectionString, Object transact)
System.Data.OracleClient.OracleConnection.Open()
System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection connection, ConnectionState& originalState)
System.Data.Common.DbDataAdapter.FillFromCommand(Object data, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)
DuBan.WebForm1.Page_Load(Object sender, EventArgs e) in c:/inetpub/wwwroot/duban/index1.aspx.cs:30
System.Web.UI.Control.OnLoad(EventArgs e)
System.Web.UI.Control.LoadRecursive()
System.Web.UI.Page.ProcessRequestMain()
--------------------------------------------------------------------------------
版本信息: Microsoft .NET Framework 版本:1.1.4322.573; ASP.NET 版本:1.1.4322.573