I have a .Net application which connects to an Oracle database via ODAC. I developed this locally using ODAC 11.2 Release 4 (11.2.0.3.0) with Oracle Developer Tools for Visual Studio on my client. Its works fine.
I have now tried deploying this to a Windows 2008 Server. I installed ODAC 11.2 Release 4 (11.2.0.3.0) XCopy to c:\oracle and have my path set so “C:\oracle;C:\oracle\bin;”
However at the point the application tries to connect to Oracle I get
Unable to find the requested .Net Framework Data Provider. It may not be installed. at System.Data.Common.DbProviderFactories.GetFactory(String providerInvariantName) at System.Web.UI.WebControls.SqlDataSource.GetDbProviderFactorySecure() at System.Web.UI.WebControls.SqlDataSource.CreateConnection(String connectionString) at System.Web.UI.WebControls.SqlDataSourceView.ExecuteSelect(DataSourceSelectArguments arguments) at System.Web.UI.DataSourceView.Select(DataSourceSelectArguments arguments, DataSourceViewSelectCallback callback) at System.Web.UI.WebControls.DataBoundControl.PerformSelect() at System.Web.UI.WebControls.BaseDataBoundControl.EnsureDataBound() at System.Web.UI.WebControls.GridView.OnPreRender(EventArgs e) at System.Web.UI.Control.PreRenderRecursiveInternal() at System.Web.UI.Control.PreRenderRecursiveInternal() at System.Web.UI.Control.PreRenderRecursiveInternal() at System.Web.UI.Control.PreRenderRecursiveInternal() at System.Web.UI.Control.PreRenderRecursiveInternal() at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
I am at a loss to figure it out.
Thanks
Turns out setting “Enable 32-Bit Applications” to true under the Application Pool in IIS made it work. This is despite having the application compile to x86 rather than Any CPU.