2008-12-05 10 views
12

EF에 새로운 데이터 공급자가 필요하고 ODBC를 사용할 수없는 특별한 이유가 있습니까? ORM 특정 문제가 있어야한다는 것을 알았지 만, NHibernate는 ODBC를 통해 잘 작동합니다.Entity Framework에서 ODBC를 지원하지 않는 이유는 무엇입니까?

나는 NHibernate를 사용 중이며 계속해서 Nhibernate를 사용할 수 있지만 앞으로 프로그래머를위한 Nhibernate 지식을 추측 할 수는 없다고 생각합니다.

답변

13

Entity Framework에는 새로운 데이터 공급자가 필요하지 않습니다. 오히려 기존 ADO.NET 데이터 모델의 일부가 아닌 복잡한 SQL 생성과 같은 Entity Framework에서 요구하는 추가 서비스를 제공하기 위해 기존 데이터 공급자를 확장하는 Entity Framework 공급자가 필요합니다. 기존 ADO.NET 2.0 ODBC 브리지를 기반으로 ODBC 용 Entity Framework 공급자를 작성하는 것을 다른 사람이 막지 못했다고 생각하지 않습니다. Entity Framework에 대한 기존 ADO.NET 공급자를 확장 할 때 정확히 필요한 서비스에 대한 자세한 내용은 the source code for a sample SQL Server provider을 다운로드 할 수 있습니다.

+0

고마워요! SQL 생성은 사소한 것처럼 보입니다. 나는 MS가 그들의 공급자에 Oracle/IBM와 협력하는 경우에 생각해 본다. 대부분의 쿼리 케이스에는 겹치는 부분이있는 것처럼 보입니다. – anonymous

+0

글쎄, ODBC는 이미 많은 SQL 생성을하고 있기 때문에 ODBC를 사용하면 [여기에 임의의 DB 서버를 삽입하는 것보다] 쉬울 것입니다. –

+4

그래도 Microsoft가이 부분을 간과하는 것은 이상한 일입니다. 결국 그들은 ODBC를 발명했으며 모든 데이터베이스 제품은 여전히 ​​ODBC를 지원합니다. –

관련 문제