I have 2 projects in my solution: the first is ClassLibrary, and the second is my application. I am using the Entity Framework (Code First method) with Sql Server Compact in a second project. The question is, how can I use the same database in my projects? I tried to move all my objects, DbContext and GenericRepository to my library, and also tried to set the connection string inside the code, but I continue to get the IInvalidOperationException:
The Entity Framework provider type "System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer 'registered in the application configuration file for the ADO.NET provider with the invariant name" System.Data.SqlClient "failed to load. Make sure the name and that the assembly is available for the running application. For more details see http://go.microsoft.com/fwlink/?LinkId=260882 . information.
Here is my app.config:
<?xml version="1.0" encoding="utf-8"?> <configuration> <configSections> <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" /> </configSections> <entityFramework> <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlCeConnectionFactory, EntityFramework"> <parameters> <parameter value="System.Data.SqlServerCe.4.0" /> </parameters> </defaultConnectionFactory> <providers> <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" /> <provider invariantName="System.Data.SqlServerCe.4.0" type="System.Data.Entity.SqlServerCompact.SqlCeProviderServices, EntityFramework.SqlServerCompact" /> </providers> </entityFramework> <system.data> <DbProviderFactories> <remove invariant="System.Data.SqlServerCe.4.0" /> <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> </configuration>
source share