0

I have a project, I use nuget to install SQLite 1.0.93.0. This install EF6 and add the references to the project. Also update my app.config:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
  </configSections>
  <system.data>
    <DbProviderFactories>
      <remove invariant="System.Data.SQLite" />
      <!--<add name="SQLite Data Provider" invariant="System.Data.SQLite" description=".Net Framework Data Provider for SQLite" type="System.Data.SQLite.SQLiteFactory, System.Data.SQLite" />-->
      <remove invariant="System.Data.SQLite.EF6" />
      <add name="SQLite Data Provider (Entity Framework 6)" invariant="System.Data.SQLite.EF6" description=".Net Framework Data Provider for SQLite (Entity Framework 6)" type="System.Data.SQLite.EF6.SQLiteProviderFactory, System.Data.SQLite.EF6" />
    </DbProviderFactories>
  </system.data>
  <entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
    <providers>
      <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
      <provider invariantName="System.Data.SQLite.EF6" type="System.Data.SQLite.EF6.SQLiteProviderServices, System.Data.SQLite.EF6" />
    </providers>
  </entityFramework>
</configuration>

Then I create a new connection to my sqlite database and I try to create an edmx, but I get an error that says that my project has a reference to the newest version of EF but there is no a compatible provider for this connection to the database. If I have a a compatible provider I have to recompile the project, or if I have not a compatible provider I have to install it and recompile the project.

I try to recompile the project but the problem persists. I don't know how to install a compatible provider.

If in the references of the project I delete the references to EntityFramework.dll and EntityFramework.SQLserver.dll then in the wizard to create the edmx a have the option to choose between EF6.x and EF5. only have enabled the option to select EF5, so in this case I use EF5 and not EF6.

How can I use EF6 with SQLite?

Thanks.

Álvaro García
  • 18,114
  • 30
  • 102
  • 193

1 Answers1

1

Please see if my answer here works for you (be sure to watch the video) : Database first create entity framework 6.1.1 model using system.data.sqlite 1.0.93

Community
  • 1
  • 1
TomL
  • 392
  • 1
  • 7