![]() |
Модераторы: Partizan, gambit |
![]() ![]() ![]() |
|
strS |
|
|||
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 19.2.2009 Репутация: нет Всего: нет |
Добрый день! Возникла следующая задача:
Есть программа, подключаяющаяся к базе данных. Структура базы, таблица и запрос фиксированн. Единственное - не известен заранее тип базы(Oracle, mySQL и др.) Предположим, в файле настроек будет указываться тип, название и прочая необходимая информация. Вопрос, каким образом подключаться к БД? Ведь помимо пути нужны драйвера работы с бд, а все сразу подключать к проекту не хочется... Подскажите куда копать Спасибо! |
|||
|
||||
dextermd |
|
|||
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 21.6.2008 Репутация: нет Всего: нет |
Почитайте про Entity Framework. Эта технология позволяет абстрагироваться от конкретных СУБД.
|
|||
|
||||
erm0l0v |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 157 Регистрация: 11.1.2011 Репутация: нет Всего: 1 |
Вынесите работу с БД в отдельные подключаемые модули, например указал пользователь что хочет использовать Oracle, ищем в папке с проектом dll для работы с Oracle и подключаем её например так:
При этом вся система будет выглядит так в главной сборке будет присутствовать только абстракции в подключаемых конкретные реализации для разных хранилищ данных. По поводу Entity Framework, я бы не советовал использовать эту технологию, как я понял из вашего вопроса рас вы хотите вынести ненужные сборки из проекта для вас очень критична производительность вашей программы а Entity Framework как и любая другая ORM очень любят кушать память. Это сообщение отредактировал(а) erm0l0v - 30.3.2012, 08:48 |
|||
|
||||
strS |
|
|||
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 19.2.2009 Репутация: нет Всего: нет |
Спасибо, попробую через Entity Framework. Спасибо!
|
|||
|
||||
Kanes |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 161 Регистрация: 11.3.2005 Репутация: нет Всего: нет |
Если еще актуально, то DbProviderFactory
--------------------
Big gun - big future |
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | .NET для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |