ADO.NET 实体框架提供以下数据平台组件: 实体数据模型(EDM);对象服务;LINQ to Entities ;实体SQL ;Entity Client ; ADO.NET数据服务;实体数据模型工具。
ADO.NET用于访问和操作数据的两个主要组件是 .NET Framework 数据提供程序和 DataSet 。
.NET Framework 数据提供程序是专门为数据操作以及快速、只进、只读访问数据而设计的组件。
Connection 对象提供到数据源的连接。
Command 对象可以访问用于返回数据、修改数据、运行存储过程以及发送或检索参数信息的数据库命令。
DataReader 可从数据源提供高性能的数据流。
DataAdapter 在DataSet对象和数据源之间起到桥梁作用,使用Command对象在数据源中执行SQL命令以向DataSet中加载数据,并将对DataSet中数据的更改协调回数据源。
DataSet 是专门为独立于任何数据源的数据访问而设计的。因此它可以用于多种不同的数据源,用于XML数据、或用于管理应用程序本地的数据。
包含一个或多个DataTable对象的集合,这些对象由数据行和数据列以及有关DataTable对象中数据的主键、外键、约束和关系信息组成。
DataReader 和DataSet 的选择
选择的依据取决于所需的功能类型。使用DataSet可执行以下操作:
- 在应用程序中将数据缓存在本地,以便可以对数据进行处理。如果只需要读取查询结果,则DataReader是更好的选择。
- 在层间或从XML Web 服务对数据进行远程处理。
- 与数据进行动态交互,例如绑定到Windows窗体控件或组合并关联来自多个源的数据。
- 对数据执行大量的处理,而不需要与数据源保持打开的连接,从而将该连接释放给其它客户端使用
三种独立的 ADO.NET 语言集成查询技术: LINQ to DataSet 、LINQ to SQL 和 LINQ to Entities 。
- LINQ to DataSet 提供针对 DataSet的形式多样的优化查询。
- LINQ to SQL 使您可以直接查询 SQL Server 数据库架构。
- LINQ to Entities 允许您查询实体数据模型。