2013-03-07 3 views
0

Я пытаюсь подключиться к Sqlite db из моего моно приложения, но я продолжаю получать эту ошибку при попытке открыть соединение.Mono Connection string

System.FormatException: Input string was not in the correct format 

Вот моя строка соединения:

String connString = @"Data Source=C:\Users\pc_user\Desktop\Folder\Database.db;Version=2.2;Password=xxx;"; 

мне удалось подключиться к БД (после того, как много человеко-часов), но теперь я не могу вставлять записи в it.I получить этот неоднозначный ошибка:

System.ArgumentException: element already exists 

Помощь, кто

+0

Не был ли класс 'SQLiteConnectionStringBuilder'? –

+0

Я не использовал SQLiteConnectionStringBuilder. Это мое первое приложение, новичок в этом. Как я должен построить класс? – Jeffwn

+0

Я не могу попробовать или проверить руководства прямо сейчас, но из памяти я думаю, вам нужно просто называть 'new SQLiteConnectionStringBuilder()', а затем присваивать что-то свойствам 'DataSource' и' Password' (?), строка подключения готова в свойстве 'ConnectionString'. –

ответ

1

Согласно Connectionstring.com (неоценимый ресурс): Ключ "Version" может принимать значение "2" для SQLite 2.x (по умолчанию) или значение "3" для SQLite 3.x

Вы пробовали

String connString = @"Data Source=C:\Users\pc_user\Desktop\Folder\Database.db;Version=2.2;Password=xxx;"; 
+0

Я попытался использовать ключевое значение 2, но это не сработало. – Jeffwn

0

Рыбный батончик прав: вы должны установить версию либо 2 или 3.

могли бы попытаться изменить строку подключения к:

String connString = @"Data Source=file:C:\Users\pc_user\Desktop\Folder\Database.db;Version=2;Password=xxx;" 

(изменение является добавление «файл:» после гроша данных RCE). Если он не работает, вы можете попробовать с

String connString = @"URI=file:C:\Users\pc_user\Desktop\Folder\Database.db;Version=2;Password=xxx;" 

И вы держите имея ту же ошибку, вы могли бы попробовать с паролем менее базами данных (и удаление Password = из строки подключения) ?