DataSet在具有多個DataTable物件的 中,您可以使用 DataRelation 物件將一個數據表關聯到另一個數據表、瀏覽數據表,以及從相關數據表傳回子數據列或父數據列。
建立 DataRelation 所需的參數是被建立的 DataRelation 的名稱,以及一個或多個 DataColumn,這些 DataColumn 是指向關係中父欄與子欄的參考陣列。 建立 DataRelation 之後,您就可以使用它在數據表之間巡覽,並擷取值。
將 a DataRelation 加入 a DataSet 會預設地將 a UniqueConstraint 加入父資料表,a ForeignKeyConstraint 加入子資料表。 如需這些默認條件約束的詳細資訊,請參閱 DataTable 條件約束。
以下程式碼範例在DataSet中使用兩個DataTable物件來建立DataRelation。 每個 DataTable 數據行都包含名為 CustID 的數據行,其可作為兩 DataTable 個對象之間的連結。 範例將單一的DataRelation加入DataSet的Relations集合中。 範例中的第一個參數指定了要創建的實體名稱 DataRelation 。 第二個參數設定父 DataColumn,第三個參數設定子 DataColumn。
customerOrders.Relations.Add("CustOrders", _
customerOrders.Tables("Customers").Columns("CustID"), _
customerOrders.Tables("Orders").Columns("CustID"))
customerOrders.Relations.Add("CustOrders",
customerOrders.Tables["Customers"].Columns["CustID"],
customerOrders.Tables["Orders"].Columns["CustID"]);
A DataRelation 也有一個 Nested 屬性,當設定 為 true 時,子資料表的列會被巢狀放在父資料表的相關資料列中,並以 XML 元素形式使用 WriteXml 撰寫。 如需詳細資訊,請參閱 在 DataSet 中使用 XML。