ADO.NET Entity Framework 查询概念模型(实体框架)

使用 ADO.NET 实体框架可以查询概念模型。实体框架支持针对概念模型执行以下类型的查询:

查询类型

说明

语言集成查询 (LINQ)

通过 LINQ to Entities,可以使用语言特定的查询运算符对实体数据执行 LINQ 查询。有关更多信息,请参见 LINQ to Entities

Entity SQL

Entity SQL 是类似于 SQL 的与存储无关的查询语言。通过 Entity SQL,可以将实体数据作为对象或以表格形式进行查询。在以下情况下,应考虑使用 Entity SQL:

  • 当查询必须在运行时动态构造时。在这种情况下,还应考虑使用 ObjectQuery <(Of <(<'T >)>)> 的查询生成器方法,而不是在运行时构造 Entity SQL 查询字符串。

  • 当您要将查询定义为模型定义的一部分时。在数据模型中只支持 Entity SQL。有关更多信息,请参见 QueryView 元素 (MSL)

  • 当使用 EntityClient,通过 EntityDataReader 将只读实体数据返回为行集时。 有关更多信息,请参见 用于实体框架的 EntityClient 提供程序

  • 如果您已经是基于 SQL 的查询语言的专家,Entity SQL 可能对您而言是最简单不过了。

查询生成器方法

通过 ObjectQuery <(Of <(<'T >)>)> 的这些方法,您可以构造与 Entity SQL 相同的查询,而不必构造查询字符串。 因为这些方法始终返回 ObjectQuery <(Of <(<'T >)>)>,所以,您可以连续地调用方法来生成查询或使用它们来扩展 Entity SQL 查询。 某些方法(如 WhereOrderBy)将 Entity SQL 片段作为参数。 查询生成器方法可以后跟某些 LINQ 标准查询运算符。有关更多信息,请参见 查询生成器方法(实体框架)

本节中的主题说明如何使用 ObjectQuery <(Of <(<'T >)>)> 类查询概念模型。 有关对概念模型执行 LINQ 查询的更多信息,请参见 LINQ to Entities 中的查询

本节内容

对象查询(实体框架)

加载相关对象(实体框架)

查询生成器方法(实体框架)

直接执行存储命令

如何:执行返回实体类型对象的查询(实体框架)

如何:执行参数化查询(实体框架)

如何:使用导航属性导航关系(实体框架)

如何:使用查询路径调整结果(实体框架)

如何:显式加载相关对象(实体框架)

如何:使用延迟加载来加载相关对象(实体框架)

如何:调用用户定义的函数(实体框架)

如何:筛选数据(实体框架)

如何:对数据进行排序(实体框架)

如何:对数据分组(实体框架)

如何:聚合数据(实体框架)

如何:执行返回匿名类型集合的查询(实体框架)

如何:执行返回基元类型集合的查询(实体框架)

如何:使用特定对象的键返回特定对象(实体框架)

如何:查询 EntityCollection 中的相关对象(实体框架)

如何:对两个查询的联合排序(实体框架)

如何:对查询结果分页(实体框架)

如何:查看存储命令(实体框架)

如何:从 LINQ to Entities 查询结果中移除重复元素

如何:使用存储过程以及 In 和 Out 参数执行查询(实体框架)

如何:查询复杂类型(实体框架)

如何:使用每种类型多个实体集查询对象(实体框架)

如何:查询映射到不同表的实体

如何:直接对数据源执行命令

相关主题
请参见

概念

其他资源

posted @ 2010-12-29 18:41  子福当自强  阅读(384)  评论(0编辑  收藏  举报
悟道