Как сделать sqlite со структурой сущностей "встроенным решением" - PullRequest
2 голосов
/ 28 марта 2012


Я пишу программу на C # и хочу хранить любые данные в базе данных. Я хочу использовать базу данных, которая не требует дополнительной установки на клиентском компьютере.
Я выбираю SQLite и Entity Framework.
Я пишу простой тестовый проект, который открывает БД и пишет любые строки только для проверки, что все работает нормально.
Для System.data.Sqlite в наборе ссылок проекта - скопируйте в выходную папку, скомпилируйте и запустите его на клиентском компьютере - и получите исключение:

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

Я пытаюсь добавить настройки провайдера в конфигурационный файл, как там:

<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"/>
</DbProviderFactories>

И получите следующую ошибку:

System.Data.ProviderIncompatibleException
A null was returned after calling the 'GetService' method on a store provider instance of type 'System.Data.SQLite.SQLiteFactory'. The store provider might not be functioning correctly.

Что я делаю не так? Можно использовать платформу sqlite + entity без какой-либо дополнительной установки, кроме .net 4.0.
Я использую Windows 7 64x с установленной сетью 4.0 на моей машине и Windows 7 32x с установленной сетью 4.0 на клиентской машине Буду рад любой помощи

...