4
|
masoud ramezani · 技术社区 · 15 年前 |
![]() |
1
3
linq使用queryproviders的概念。 查询提供程序负责将lamba表达式转换为底层数据存储上的查询。 正如obalix在我之前所说,linq to entities查询提供程序将带有lambdas的linq转换为真正的sql,后者使用底层ado.net对象执行。看看规范函数 here ,它们被转换为sql(注意哪些不是)。 另一方面,linq to dataset对数据集基础设施起作用。您可能还记得,数据集有一些与之相关联的查询。(getter、updates、deletes、insert)使用dataadapters对象。LINQ查询被映射到数据集=表、列等中已经存在的对象上。SQL查询没有生成,因为提供程序没有在如此低的级别上操作-数据集是它使用的数据抽象。 如果您不关心数据库不可知论,那么您可以看看linq to sql,如果我没听错的话,甚至还有一些oracle的linq提供者。 |
![]() |
2
6
他们是独立的。
|
![]() |
3
3
他们是独立的,甚至不能很好地合作。 linq to datatsets是一组扩展方法,允许基于IEnumerable对已加载到数据表中的数据进行LINQ查询。它接近于查询列表和其他集合。 linq to实体使用查询提供程序和iqueryable将linq查询转换为sql查询。它还提供了将数据库表建模为对象的功能。 如果您使用ef,您可以编写(更多)面向对象的,使用数据集仍然是面向数据库的。 |
![]() |
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 6 月前 |
![]() |
Pavel Foltyn · 如何在C中生成逆字典# 8 月前 |
![]() |
ewok · 基于种子和上一个值创建值列表 1 年前 |
|
Vasu V · 将foreach转换为select语句 1 年前 |
![]() |
Modest · 使用命名空间和文本值序列化xElement 1 年前 |