@valid

C# сервер без привязки к конкретной базе данных — как реализовать?

Имеется сервер на c#. Нужно реализовать класс работы с базой данных, но так, чтобы в случае смены БД не пришлось править запросы к базе данных.
  • Вопрос задан
  • 2741 просмотр
Пригласить эксперта
Ответы на вопрос 3
@Free_ze
Пишу комментарии в комментарии, а не в ответы
Хорошо описано у Троелсона в "С# 5.0 и платформа .NET 4.5". Там в главе 21 есть параграф "Абстрагирование поставщиков данных с помощью интерфесов". Там как раз о фабриках рассказывается, вынесении строки подключения в XML-конфиг и т.п. Советую заглянуть.

А вообще, DAL можно реализовать отдельной библиотекой, которая будет торчать наружу через интерфейсы, да базовые классы. Ее отдельно можно будет спокойно перекомпилять без боли.
Ответ написан
Комментировать
@AlexP11223
Ну если Entity Framework использовать, то вроде же не придется код переписывать даже если не заморачиваться сильно с абстрагированием.

Или прям в Runtime (без пересборки) менять надо?
Ответ написан
@gleb_kudr
Так делать можно, есть готовые сторонние библиотеки (почти все платные, насколько знаю). msdn.microsoft.com/en-us/data/dd363565.aspx
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы