0

任何人都可以回答我的問題嗎? 我們正在決定實施我們的數據訪問層。最初我們與NHibernate工作,但現在有一個變化,所以請回答我的問題...ADO.NET實體框架和LINQ to SQL

IS的LINQ to SQL的ADO.NET實體 框架的一部分或者是一個獨立的 庫?

如果我說我使用「的LINQ to SQL」爲 我的數據訪問層,然後它意味着 我使用ADO.NET實體框架 實現數據 訪問層。

回答

0

總之不,Linq to sql和Ado.net實體框架是兩個不同的東西。

Linq是一種語言功能。 Linq to Sql是一個擴展,它允許你在你的數據庫中使用linq特性。它就像基本的DAL生成工具。 Ado.net實體框架是和NHibernate類似的ORM。

1

IS的LINQ to SQL的ADO.NET實體 框架的一部分或者是一個獨立的 庫?

不,它是一個單獨的庫。

如果我說我使用「的LINQ to SQL」爲 我的數據訪問層,然後它意味着 我使用ADO.NET實體框架 實現數據 訪問層。

編號LinqToSql和實體框架是獨立的競爭產品。微軟推薦人們使用Entity Framework,但大多數人都在使用LinqToSql。微軟將大部分開發資源投入實體框架,而不是LinqToSql。在.NET 3.5中,LinqToSql通常是實體框架的優秀產品,但直接比較是困難的。

+0

@邁克爾:-1,因爲如果直接比較是困難的,那麼爲什麼比較? – 2010-02-10 10:38:20

+1

@約翰桑德斯:這個問題沒有要求比較,但這似乎是明顯的後續問題。我只是想幫助。微軟用LinqToSql和EntityFramework的營銷信息做了一件非常糟糕的工作。我寧願指出微軟在兩個ORM的立場上的明確聲明,但我還沒有找到任何東西。如果我的答案中有錯誤,這將有助於瞭解。 – 2010-02-10 10:52:39

+0

+2來自MSFT的搞砸的營銷信息... :) – KristoferA 2010-02-10 10:56:42

1

LINQ to SQL和ADO.NET實體框架是兩個截然不同的產品,它們實現了兩個不匹配的API,這意味着您不能只爲另一個交換一個。取決於你的觀點,兩者都有自己的長處和短處。 .NET 4還將爲這兩者添加一些改進,將更多改進應用於ADO.NET實體框架。

但它們是不同的不同的ORM的,你必須選擇一個比其他...