什么是 Linq to Entity?

Posted

技术标签:

【中文标题】什么是 Linq to Entity?【英文标题】:What is Linq to Entities? 【发布时间】:2011-04-09 16:53:30 【问题描述】:

术语太多了,由于噪音,很难学习你所追求的东西。

Linq to Entities 只是对 ADO.NET Entity Framework 生成的实体使用 Linq 查询的做法吗?或者,它是一项单独的技术?

如果它不是一项单独的技术,为什么它还有另一个令人困惑的名称?

【问题讨论】:

另见***.com/questions/2443836/… 【参考方案1】:

Linq to Entities 只是对 ADO.NET Entity Framework 生成的实体使用 Linq 查询的做法吗?

是的。 :)

【讨论】:

非常感谢。有人标记了你,但我认为你的回答和其他人一样有帮助。事实上,它是最精确和最实用的。【参考方案2】:

LINQ to entity 是一个LINQ provider 用于实体框架模型。

分析 lambdas 的东西,实体框架的一部分。


要彻底了解 LINQ 的本质,我推荐《Pro LINQ》一书。

【讨论】:

非常感谢。这实际上意味着,对于使用它的开发人员来说,它提供了一种编写 linq 查询来查询实体框架生成的实体的方法。我明白你在说什么。实际上是这组类实现了 IQueryable 并构建表达式树并将每个 linq 查询保存到表达式树中的表达式中,然后当有人触发查询上的迭代器以执行它时,它将其转换为 SQL 查询.【参考方案3】:

“LINQ”是一个粗略的术语,因为人们在很多情况下使用它并不精确。

我遇到过很多人,当他们说“Linq”的意思是“LINQ to SQL”时。

LINQ 确实是一个标准的查询系统,它集成到可以适应许多不同数据源的语言中。

LINQ to Objects -> 使用 Linq 查询内存中的对象 LINQ to XML -> 使用 Linq 查询 XML 文档 LINQ to Entities -> 使用 Linq 查询 ADO.NET Entity Framework 生成的实体 LINQ to SQL -> 使用 Linq 查询 SQL Server 表(在 Entity Framework 4.0 之后几乎已过时) LINQ to [Your favorite API] -> Linq 可用于查询各种数据源。这些天来,我们看到它用于 SharePoint 和 MS CRM,但它越来越多地用于各种东西。

【讨论】:

谢谢,戴夫。我确实了解 Linq 是什么。它是一种用于创建和使用数据管道,然后使用该管道从数据源转换或查询或投影数据的机制,无论数据源的性质是什么(只要它是 IQueryable)。【参考方案4】:

Linq to Entities 确实是用户 Linq 查询 ADO.NET Entity 框架的实践。但在底层,有一些单独的技术(提供者)将 linq 构建的表达式树转换为数据库查询。

【讨论】:

谢谢。我明白你在说什么。感谢您的澄清。 大约再过 5 分钟,我才能将此答案标记为最佳。 :-)

以上是关于什么是 Linq to Entity?的主要内容,如果未能解决你的问题,请参考以下文章

LINQ TO SQL 和 ADO.NET ENTITY 有啥区别呢?

Linq to entity 没有生成 where 子句

Linq To Entity 查询条件扩展

LINQ to entity中的一些误解

无法在 linq to entity 查询中构造实体或复杂类型“x”

linq to entity常用操作