SubSonic, SQLite и не удается найти поставщика данных? - PullRequest
3 голосов
/ 23 декабря 2009

Я начинаю с SubSonic. Я хотел изменить свою базу данных на sqlite, и у меня есть это в моем конфигурационном файле

  <connectionStrings>
      <add name="NorthwindSQLite"
       connectionString="Data Source=C:\unzipped\WindowsFormsApplication1\my.db"
       providerName="System.Data.SQLite"/>
  </connectionStrings>

Я получаю исключение

A first chance exception of type 'System.ArgumentException' occurred in System.Data.dll

Additional information: Unable to find the requested .Net Framework Data Provider.  It may not be installed.

У меня есть ссылка на SQLite в справочном разделе. Так как мне исправить эту проблему?

Ответы [ 2 ]

4 голосов
/ 23 декабря 2009

Если вы работаете с Visual Studio, попробуйте создать соединение БД с помощью System.Data.SQLite в обозревателе серверов. Если провайдера System.Data.SQLite нет в списке провайдеров, установите или переустановите его. Затем убедитесь, что вы можете открыть и просмотреть данные таблицы в Visual Studio. Если это работает, то subsonic 2.2 должен работать с файлом sqlite. Я использую более новый провайдер данных для Subsonic для sqlite, который находится в хранилище GitHub от SubSonic, который, кажется, работает немного лучше для меня. Однако он не генерирует код «многие ко многим».

В развернутом приложении вам не нужно устанавливать поставщика отдельно.

1 голос
/ 23 декабря 2009

какая версия дозвукового?

раздел моего рабочего провайдера для sqlite выглядит следующим образом:

<add name="Local" type="SubSonic.SQLiteDataProvider, SubSonic" connectionStringName="MyConn" generatedNamespace="X.Data" stripTableText="tbl" />

и моя строка подключения выглядит как

<add name="MyConn" connectionString="Data Source=C:\data.db;Version=3;"/>

надеюсь, это поможет: -)

...