Есть ли способ в .NET, кроме Oledb, чтобы быть независимым от базы данных - PullRequest
2 голосов
/ 12 июня 2011

Можно ли повторно использовать мои классы DAL в разных базах данных?

Я знаю, что некоторые технологии (Linq и EF) поддерживают быструю разработку, я ценю эту функцию, но я также хочу сохранить свой код DALвозможность повторного использования в другой базе данных.

Простая вещь, которая приходит на ум, - это использование Oledb со встроенными SQL-запросами. Есть ли более элегантный способ?пожалуйста, направь меня.Я просто рассматриваю 2 вещи.

  1. поддержка 4 наиболее часто используемых баз данных (SQL Server, My SQL, Access, Oracle).
  2. Поддержка быстрой разработки.

Спасибо

Ответы [ 3 ]

4 голосов
/ 12 июня 2011

Вы можете рассмотреть возможность использования ORM Framework , например Entity Framework или NHibernate .Таким образом, ваш уровень доступа к данным будет независим от базы данных.

3 голосов
/ 12 июня 2011

Если вы придерживаетесь интерфейсов (IDbConnection, IDbCommand, ...) и их заводских методов (IDbConnection.CreateCommand), то единственный код, который должен знать, какую базу данных вы используете, это первоначальное создание соединения (которое может быть инкапсулировано).

1 голос
/ 12 июня 2011

Entity Framework делает работу, которую вы хотите. Наиболее часто используемые базы данных поддерживают его, за исключением Oracle. Для Oracle вы должны использовать сторонние компоненты, поскольку официальная поддержка Oracle для Entity Framework все еще находится в стадии бета-тестирования.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...