Поделиться через


Добавление отношений DataRelation

В наборе DataSet с несколькими объектами DataTable можно использовать объекты DataRelation для связи таблиц друг с другом, для перехода по таблицам, а также для возвращения дочерних или родительских строк из связанной таблицы.

Аргументы, необходимые для создания DataRelation, — это имя создаваемого объекта DataRelation, а массив одной или нескольких DataColumn ссылок на столбцы, которые служат родительскими и дочерними столбцами в связи. После создания DataRelation его можно использовать для перехода между таблицами и получения значений.

Добавление DataRelation к добавлению по умолчанию UniqueConstraint родительской таблицы и ForeignKeyConstraint дочерней DataSet таблицы. Дополнительные сведения об этих ограничениях по умолчанию см. в разделе "Ограничения DataTable".

В следующем примере кода создается DataRelation с помощью двух DataTable объектов в объекте DataSet. Каждый DataTable содержит столбец с именем CustID, который служит связью между двумя DataTable объектами. В этом примере в коллекцию "Отношения" добавляется один объект DataRelation. DataSet Первый аргумент в примере указывает имя создаваемого объекта 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"]);  

DataRelation также имеет вложенное свойство, которое, если задано значение true, приводит к тому, что строки из дочерней таблицы будут вложены в связанную строку из родительской таблицы при написании в виде XML-элементов.WriteXml Дополнительные сведения см. в статье Использование XML в наборах данных.

См. также