Я пытаюсь выполнить работу с Entity Framework 5 на SQLite (http://brice-lambson.blogspot.ru/2012/10/entity-framework-on-sqlite.html). Я установил SQLite и EF6. Однако я получил ошибку:Как сочетаются SQLite и Entity Framework 6
'Instance' элемент типа поставщика Entity Framework «System.Data.SQLite.SQLiteFactory, System.Data.SQLite, Version = 1.0.99.0, культура = нейтральной, PublicKeyToken = db937bc2d44ff139 'не возвращал объект, который наследуется от «System.Data.Entity.Core.Common.DbProviderServices». Поставщики Entity Framework должны наследовать от этого класса, а член «Экземпляр» должен вернуть экземпляр singleton поставщика. Это может быть связано с тем, что провайдер не поддерживает Entity Framework 6 или новее;
Не могли бы вы дать мне подсказку, что может вызвать проблему? Большое спасибо!
Мой app.config
файл выглядит следующим образом: установлен
<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>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
</startup>
<entityFramework>
<defaultConnectionFactory type="System.Data.SQLite.EF6.SQLiteProviderServices, System.Data.SQLite.EF6"/>
<providers>
<provider invariantName="System.Data.SQLite"
type="System.Data.SQLite.SQLiteFactory, System.Data.SQLite"/>
<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>
<system.data>
<DbProviderFactories>
<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" />
<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" /></DbProviderFactories>
</system.data>
<connectionStrings>
<add name="ChinookContext"
connectionString="Data Source=|DataDirectory|Chinook_Sqlite_AutoIncrementPKs.sqlite"
providerName="System.Data.SQLite"/>
</connectionStrings>
</configuration>
Я следующие компоненты:
- EF 6.0.0
- System.Data.SQLite 1.0.99
- системы. Data.SQLite.Core 1.0.99
- System.Data.SQLite.EF6 1.0.99
- System.Data.SQLite.Linq 1.0.99
спасибо, что вы спасли мой день, и избегайте мне борьбы с этими зависимостями :) – cdescours