DataSet 对象是支持 ADO.NET 的断开式、分布式数据方案的核心对象。DataSet 是数据的内存驻留表示形式,无论数据源是什么,它都会提供一致的关系编程模型。它可以用于多种不同的数据源,用于 XML 数据,或用于管理应用程序本地的数据。DataSet 表示包括相关表、约束和表间关系在内的整个数据集。下图将显示 DataSet 对象模型。
DataSet 中的方法和对象与关系数据库模型中的方法和对象一致。
DataSet 也可以按 XML 的形式来保持和重新加载其内容,并按 XML 架构定义语言 (XSD) 架构的形式来保持和重新加载其架构。有关更多信息,请参见在 DataSet 中使用 XML。
DataTableCollection
DataRelationCollection
DataSet 在其 DataRelationCollection 对象中包含关系。关系由 DataRelation 对象来表示,它使一个 DataTable 中的行与另一个 DataTable 中的行相关联。关系类似于可能存在于关系数据库中的主键列和外键列之间的联接路径。DataRelation 标识 DataSet 中两个表的匹配列。
关系使您能够在 DataSet 中从一个表导航至另一个表。DataRelation 的基本元素为关系的名称、相关表的名称以及每个表中的相关列。关系可以通过一个表的多个列来生成,方法是将一组 DataColumn 对象指定为键列。将关系添加到 DataRelationCollection 中之后,可以选择添加 UniqueKeyConstraint 和 ForeignKeyConstraint,在对相关列的值进行更改时,强制执行完整性约束。
ExtendedProperties
DataSet、DataTable 和 DataColumn 全部具有 ExtendedProperties 属性。ExtendedProperties 是一个 PropertyCollection,可以在其中加入自定义信息,例如用于生成结果集的 SELECT 语句或生成数据的时间。ExtendedProperties 集合与 DataSet 的架构信息一起持久化。
请参见