0

谁能回答我的问题?我们正在决定我们的数据访问层的实现。最初我们正在使用 NHibernate,但现在发生了变化,所以请回答我的问题......

LINQ to SQL 是 ADO.NET 实体框架的一部分还是一个单独的库?

如果我说我正在使用“LINQ to SQL”作为我的数据访问层,那么这是否意味着我正在使用 ADO.NET 实体框架来实现数据访问层。

4

3 回答 3

1

LINQ to SQL 是 ADO.NET 实体框架的一部分还是一个单独的库?

不,它是一个单独的库。

如果我说我正在使用“LINQ to SQL”作为我的数据访问层,那么这是否意味着我正在使用 ADO.NET 实体框架来实现数据访问层。

不是。LinqToSql 和 Entity Framework 是独立的竞争产品。Microsoft 建议人们使用 Entity Framework,但大多数人都在使用 LinqToSql。微软将其大部分开发资源投入到实体框架中,而不是 LinqToSql。在 .NET 3.5 中,LinqToSql 通常是优于 Entity Framework 的产品,但很难直接比较。

于 2010-02-10T10:36:08.820 回答
1

LINQ to SQL 和 ADO.NET 实体框架是两个不同的产品,它们实现了两个不匹配的独立 API,这意味着您不能将一个换成另一个。根据您的观点,两者都有其优点和缺点。.NET 4 还将对两者都进行一些改进,更多的改进是针对 ADO.NET 实体框架的。

但它们是不同的不同 ORM,你将不得不选择一个而不是另一个......

于 2010-02-10T14:45:39.973 回答
0

简而言之,Linq to sql 和 Ado.net 实体框架是两个不同的东西。

Linq 是一种语言功能。Linq to Sql 是一个扩展,允许您在数据库中使用 linq 功能。它就像基本的 DAL 生成工具。Ado.net 实体框架是和ORM 类似的NHibernate。

于 2010-02-10T07:01:15.320 回答