2 Replies Latest reply on Dec 19, 2012 4:35 PM by 979840

    The specified store provider cannot be found in the configuration, or is...

      Oracle Database 11g Enterprise Edition Release - 64bit Production
      PL/SQL Release - Production
      CORE     Production
      TNS for Linux: Version - Production
      NLSRTL Version - Production


      I have a solution developed in Visual Studio 2012 targetting .Net 4.0. Simplified: Startup project is a WPF library and supporting this library is another project that uses Entity Framework to retrieve data. I have copied the connection strings from my EF project to my startup project, and everything seems to work fine on the development machine.

      However, as sson as this project is run on a user's desktop they get the error:

      The specified store provider cannot be found in the configuration, or is not valid.

      Stack trace (transcribed from screenshot, so there might be typos):
      at.system.Data.EntityClient.EntityConnection.GetFactory(String providerString)
      at System.Data.EntityClient.EntityConnection.ChangeConnectionString(String newConnectionString)
      at System.Data.EntityClient.EntityConnection..ctor(String connectionString)
      at System.Data.Entity.Internal.LazyInternalConnection.InitializeFromConnectionStringSetting(ConnectionStringSettings appConfigConnection)
      at System.Data.Entity.Internal.,LazyInternalConnection.TryInitializeFromAppConfig(String name, AppConfig config)
      at System.Data.Entity.Internal.LazyInternalConnection.Initialize()
      at System.Data.Entity.Internal.LazyInternalConnection.CreateObjectContextFromConnectionModel()
      at System.Data.Entity.Internal.LazyInternalContext.InitializeContext()
      at System.Data.Entity.Internal.InternalContext.GetEntitySetAndBaseTypeForType(Type entityType)
      at System.Data.Entity.Internal.Linq.InternalSet` 1.Initialize()
      at System.Data.Entity.Internal.Linq.InternalSet` 1.get_InternalContext()
      at System.Data.Entiy.Infrastructure.DbQuery` 1.System.Linq.IQueryable.get_Provider()
      at System.Linq.Queryable.Where[TSource](IQueryable` 1 source, Expression` 1 predicate)
      at MyEntityNameSpace.MyEntitySet.LoadData()

      I've already verified that Oracle.DataAccess is referenced in my EF project, and I'm including oci.dll, orannzsbb11.dll, oraociei11.dll, and OraOps11w.dll in my main library (fat installation).

      This configuration worked when using the older ADO.Net DataSets, but now I want to use EF 4.4 (DataBase first/model first/whatever it's not Code First) because it's just easier to code against. So obviously I'm missing something when it comes to deploying my solution. Any ideas?

      Note that this is a desktop application using MS OneClick.