C# и встраиваемые БД
От: Аноним  
Дата: 11.08.09 12:26
Оценка:
Задача: написать программу с локальной БД. Важно то, чтобы программа была полностью переносима с одной машины на другую. Никаких дополнительных серверов для поддержки БД на рабочую машину не должно быть установлено. При решении этой задачи я выбрал 3 варианта и в каждой возникли проблемы.

Работаю на MS Visual C# 2008 Express Edition. И так:

1) Sql server CE — здесь пошел на компромис, потому что надо будет установить сервер sql CE.
Проблема: при портировании программа не находит файл с БД. Приходится на отдельно взятой машине пересобирать программу.
Вопрос: как зарегестрировать в программе БД, чтобы независимо от того, где запускается программа, она находила бы файл БД в корневой папке программы?

2) SQLite
Проблема: в данном решении, при добавлении источника данных в программу (add new data source), после выбора провайдера SQLite Database File, выходит окно в котором надо пропистаь ConnectionString. Но что бы туда не было бы написано, программа всегда выдает ошибку: "Could not load file or assembly 'Microsoft.VisualStudio.Data, Version=8.0.0.0, Culture=neutral, PublicLeyToken=//тут 16й код//' or one of its dependencies. The located assembly's manifest defenition does not match the assembly reference. (Exception from HRESULT: 0x80131040)". При проверки соединения (Test Connection) все проходит успешно.
Вопрос: Как решить эту задачу, что я сделал не так?!

3) FireBird — сам север установил. Работает так, как надо. НО
Проблема: при установки провайдера IBProvider (и профессиональну версию и free версию), он не отображается при добавлении источника данных в программу (add new data source). При выборе провайдеров, он банально отсуствует в списке.
Вопрос: что надо сделать чтобы установить IBProvider правильно, или посоветуйте другой провайдер для FireBird под C#. В общем надо связать БД FireBird с программой.

ЗЫ возможно, мои вопросы просты и глупы, но начал работать под C# недавно. Если будете посылать меня читать маны и гайды, то будьте добры, давайте конкретные ссылки. Спасибо!
c# firebird sqlite sql ce
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.