Oracle.DataAccess.Client.OracleException 0x80004005

时间:2017-03-09 19:37:32

标签: c# asp.net oracle iis

我有一个引用Oracle.DataAccess的.aspx页面。我可以通过视觉工作室启动应用程序,它运行良好。我的VS版本是2012,IIS是7.5,操作系统是Win 7,ODP是3.5。

但是,当我尝试在IIS中部署它时,它给了我一个例外。到目前为止,我已尝试过以下方法: -

我的想法已经不多了。这是代码和异常错误。请帮忙: -

代码:

string oradb = "Data Source=MY_SRV;User Id=USERID;Password=PWD;";
Oracle.DataAccess.Client.OracleConnection conn = new Oracle.DataAccess.Client.OracleConnection(oradb);
Oracle.DataAccess.Client.OracleCommand cmd = new Oracle.DataAccess.Client.OracleCommand("myOracleStoredPrc", conn);
cmd.CommandType = System.Data.CommandType.StoredProcedure;
cmd.Parameters.Add("p_db_name", "varchar2").Value = "abc";
cmd.Parameters.Add("p_user_name", "varchar2").Value = "xyz";
conn.Open();
cmd.ExecuteNonQuery();
conn.Dispose();

我启动iis网站时遇到的例外情况:

  

未处理的执行错误   描述:执行当前Web请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。   异常详细信息:Oracle.DataAccess.Client.OracleException:   来源错误:   在执行当前Web请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪来识别有关异常的起源和位置的信息   堆栈跟踪:   [OracleException(0x80004005)]      Oracle.DataAccess.Client.OracleException.HandleErrorHelper(Int32 errCode,OracleConnection conn,IntPtr opsErrCtx,OpoSqlValCtx * pOpoSqlValCtx,Object src,String procedure,Boolean bCheck)+1532      Oracle.DataAccess.Client.OracleException.HandleError(Int32 errCode,OracleConnection conn,IntPtr opsErrCtx,Object src)+49      Oracle.DataAccess.Client.OracleConnection.Open()+ 4800      WebApplication1.ResetOraclePwdForm.Page_Load(Object sender,EventArgs e)+72      System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender,EventArgs e)+51      System.Web.UI.Control.OnLoad(EventArgs e)+92      System.Web.UI.Control.LoadRecursive()+54      System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint,Boolean includeStagesAfterAsyncPoint)+772

1 个答案:

答案 0 :(得分:0)

转向ManagedDataAccess解决了我的问题