【发布时间】:2013-01-24 07:33:40
【问题描述】:
我知道 LINQ 的好处,并且知道在 .Net 应用程序中使用它。我填写了作为实体框架提供的相同内容。
那么 LINQ 和实体框架之间的主要区别是什么?
【问题讨论】:
我知道 LINQ 的好处,并且知道在 .Net 应用程序中使用它。我填写了作为实体框架提供的相同内容。
那么 LINQ 和实体框架之间的主要区别是什么?
【问题讨论】:
LINQ 可以应用于任何数据源:内存中的对象、XML、SQL...
Entity Framework 可以使用 LINQ 对关系数据库执行查询。
LINQ to SQL 是 Entity Framework 的前身,现在已经过时了。
【讨论】:
比较 EF 和 LINQ 不正确。两者是不同的东西,它们经常一起工作以提供更好的开发人员体验(和生产力优势)。
LINQ 正在查询可应用于任何数据源的语法/模型。 EF 提供了一种这样的数据源。
【讨论】:
query 部分是 LINQ。我希望您不要混淆 LINQ 和 LINQ to SQL - 后者是用于 SQL Server 数据库(而 EF 针对任何 RDBMS)的 ORM 库(类似于 EF)。
它们有些相似,并且在代码方面可以以非常相似的方式使用,但它们有一些重要的区别。请注意,“LINQ”与“LINQ to SQL”不同; EF 也使用 LINQ。一些显着的区别是:
【讨论】:
我完全同意 VinayC。你无法真正比较。
使用实体框架,您将能够在程序中拥有数据库的完整表示。它将帮助您创建与数据库元素相对应的类,就像它们在数据库中一样连接在一起。您可以直接与这些类的元素进行交互,这样会影响数据库。您将在 Visual Studio 中对这些类图进行一些表示。它基本上通常比直接使用数据库元素更简单,即使设置它需要一些努力。
Linq 的用途是对数据源进行查询。
【讨论】: