2008-12-05 2 views
12

Существует ли конкретная причина, по которой EF требует новых поставщиков данных и не может использовать ODBC? Я решил, что это должна быть проблема с ORM, но NHibernate отлично работает через ODBC.Почему платформа Entity Framework не поддерживает ODBC?

Я использую NHibernate и могу продолжать использовать Nhibernate, но я волнуюсь, что я не могу предположить знания Nhibernate для будущих программистов здесь.

ответ

13

В Entity Framework не требуются новые поставщики данных. Скорее, для этого необходимы поставщики Entity Framework, которые расширяют существующие поставщики данных, для предоставления дополнительных услуг, требуемых инфраструктурой Entity Framework, таких как сложная генерация SQL, которые не являются частью существующей модели данных ADO.NET. Я не думаю, что есть что-то, что мешает кому-либо писать поставщик Entity Framework для ODBC на основе существующего моста ODBC ADO.NET 2.0. Вы можете загрузить the source code for a sample SQL Server provider для получения дополнительной информации о том, какие именно услуги необходимы при расширении существующего поставщика ADO.NET для платформы Entity Framework.

+0

Спасибо! Генерация SQL кажется нетривиальной. Интересно, работает ли MS с Oracle/IBM на своих провайдерах. Похоже, что в большинстве случаев запроса будет тонна перекрытия. – anonymous 2008-12-16 16:39:29

Смежные вопросы