你将使用ADO.NET属性的对象与数据源进行交互。ADO.NET属性管理可以与据源进行连接。ADO.NET属性允许你与数据源进行检索,使用DataSet并实现能进行读取或者写入数据源的SqlDataAdapter。
创建 DataRelation 所需的参数是所创建的 DataRelation 的名称以及对用作关系中父列和子列的那些列的一个或多个 DataColumn 引用的数组,ADO.NET属性 当创建 DataRelation 后,可以使用它在多个表之间导航和检索值。
默认情况下,向 DataSet 中添加 DataRelation 会将一个 UniqueConstraint 添加到父表中并将一个 ForeignKeyConstraint 添加到子表中。ADO.NET属性有关这些默认约束的更多信息,请参见数据表约束 (ADO.NET)。#t#
以下代码示例使用 DataSet 中的两个 DataTable 对象来创建一个 DataRelation。 每个 DataTable 包含一个名为 CustID 的列,它用作两个 DataTable 对象之间的链接。 该示例将单个 DataRelation 添加到 DataSet 的 Relations 集合中,ADO.NET属性该示例中的第一个参数指定所创建的 DataRelation 的名称。 第二个参数设置父 DataColumn,第三个参数设置子 DataColumn。
- SqlCommandBuilder sqlCommandBuilder1 = new SqlCommandBuilder ( sqlDataAdapter1 ) ;
- //以sqlDataAdapter1为参数来初始化SqlCommandBuilder实例
- dsDataSet1.Tables["Customers"].Rows[0].Delete ( ) ;
- //删除DataSet中删除数据表Customers中第一行数据
- sqlDataAdapter1.Update ( dsDataSet1 ,"Customers" ) ;
- //调用Update方法,以DataSet中的数据更新从数据库
- dsDataSet1.Tables["Customers"].AcceptChanges ( ) ;
DataRelation 也具有 Nested 属性,如果该属性设置为 true,则来自子表的行会在使用 WriteXml 以 XML 元素形式编写时嵌套在来自父表的关联行中。 有关更多信息,请参见在数据集中使用 XML (ADO.NET属性)。