ODP services can't recognize DbProviderFactory

Nov 27, 2007 at 1:35 PM
When I use Service.Odp library with Oracle.DataAccess.Client for workflow persistence Initialize method of class DefaultAdoResourceProvider throws exception from method DbProviderFactories.GetFactory("Oracle.DataAccess.Client"), because defined factories doesn't contains Oracle.DataAccess.Client.OracleClientFactory.

So. At class OdpResourceProvider I've overrided property DbProviderFactory to:

Nov 28, 2007 at 6:51 PM
Hi Edy,

This should work without changing any code. Every ADO.NET provider should register an entry in the machine.config file (located in %SystemRoot%\Microsoft.NET\Framework\v2.0.50727\CONFIG).

Any chance you can post the <system.data> section of your machine.config file and the exact version of ODP.NET you're using? This sounds like ODP.NET might not have installed properly (I've seen the problem before when upgrading). I have the following details in my machine.config file and am running ODP.NET

some other entries here
<add name="Oracle Data Provider for .NET" invariant="Oracle.DataAccess.Client" description="Oracle Data Provider for .NET" type="Oracle.DataAccess.Client.OracleClientFactory, Oracle.DataAccess, Version=, Culture=neutral, PublicKeyToken=89b483f429c47342" />
some other entries here