Home

Entity Framework + Oracle: Unable to find the requested .Net Framework Data Provider. It may not be

I created an VS2012 EF project pointing to Oracle using ODP.NET. I wanted to do some prototype query work in LINQPAD using my generated entities (generate model from database).

Although everything works fine in VS, when I try to add the connection to LINQPAD, and hit [test]
after selecting my entity assembly and type, and pointing to the config, I get:

"Error: The specified store provider cannot be found in the configuration, or is not valid.
Unable to find the requested .Net Framework Data Provider. It may not be installed."

Help???

Comments

  • Where abouts is the Oracle ADO.NET provider configured? Is it in the app.config file or your machine.config file?
  • I would say app.config. It's a class library with the edmx, etc in it, and its app.config, and a winforms app that calls it. I tried to put up the config file but the markup interpreter on the site wiped it all out :(
  • edited August 2013
    The provider is configured by elements that look something like this:
    <system.data>
       <DbProviderFactories>
          <add name="Microsoft SQL Server Compact Data Provider 4.0" invariant="System.Data.SqlServerCe.4.0" description=".NET Framework Data Provider for Microsoft SQL Server Compact" type="System.Data.SqlServerCe.SqlCeProviderFactory, System.Data.SqlServerCe, Version=4.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91"/>
       </DbProviderFactories>
    </system.data>
  • Should that go in the LINQPAD.exe.config?
  • I found this provider in the machine.config for the 32-bit .net framework, not the 64-bit (I'm running win7 64-bit, but because VS2012 is 32-bit, I have to run the 32-bit ODP.NET stuff. It appear LINQPAD is running in 64-bit mode and looking for the 64-bit config...?
  • Got it working! Copied the Oracle data provider tags from the 32-bit framework folder to the 64-bit framework folder and all is well. Thank you!
Sign In or Register to comment.