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

В наборе DataSet с несколькими объектами DataTable можно использовать объекты DataRelation для связи таблиц друг с другом, для перехода по таблицам, а также для возвращения дочерних или родительских строк из связанной таблицы.In a DataSet with multiple DataTable objects, you can use DataRelation objects to relate one table to another, to navigate through the tables, and to return child or parent rows from a related table.

Аргументы, необходимые для создания DataRelation , — это имя создаваемого объекта DataRelation , а также массив из одной или нескольких DataColumn ссылок на столбцы, которые служат в качестве родительских и дочерних столбцов связи.The arguments required to create a DataRelation are a name for the DataRelation being created, and an array of one or more DataColumn references to the columns that serve as the parent and child columns in the relationship. После создания объекта DataRelationего можно использовать для перехода между таблицами и получения значений.After you have created a DataRelation, you can use it to navigate between tables and to retrieve values.

Добавление DataRelation DataSet в добавляет по умолчанию объект UniqueConstraint в родительскую таблицу и ForeignKeyConstraint в дочернюю таблицу.Adding a DataRelation to a DataSet adds, by default, a UniqueConstraint to the parent table and a ForeignKeyConstraint to the child table. Дополнительные сведения об этих ограничениях по умолчанию см. в разделе ограничения DataTable.For more information about these default constraints, see DataTable Constraints.

В следующем примере кода создается отношение DataRelation с использованием двух DataTable объектов в. DataSetThe following code example creates a DataRelation using two DataTable objects in a DataSet. Каждый DataTable содержит столбец с именем CustID, который служит связью между двумя DataTable объектами.Each DataTable contains a column named CustID, which serves as a link between the two DataTable objects. В примере добавляется единичное отношение DataRelation к DataSetколлекции отношений объекта.The example adds a single DataRelation to the Relations collection of the DataSet. Первый аргумент в примере указывает имя создаваемого объекта DataRelation .The first argument in the example specifies the name of the DataRelation being created. Второй аргумент задает родительский столбец данных, а третий аргумент задает дочерний столбецданных.The second argument sets the parent DataColumn and the third argument sets the child 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, приводит к тому, что строки из дочерней таблицы будут вложены в связанную строку из родительской таблицы при WriteXml записи в виде XML-элементов с помощью.A DataRelation also has a Nested property which, when set to true, causes the rows from the child table to be nested within the associated row from the parent table when written as XML elements using WriteXml . Дополнительные сведения см. в статье Использование XML в наборах данных.For more information, see Using XML in a DataSet.

См. такжеSee also