Hinzufügen von "DataRelations"Adding DataRelations

In einem DataSet mit mehreren DataTable-Objekten können Sie mithilfe von DataRelation-Objekten eine Beziehung zwischen zwei Tabellen herstellen, um durch die Tabellen navigieren und untergeordnete oder übergeordnete Zeilen aus einer verknüpften Tabelle zurückgeben zu können.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.

Die Argumente, die zum Erstellen einer DataRelations erforderlich sind, sind ein Name für die zu erstellende DataRelations und ein DataColumn Array mit einem oder mehreren verweisen auf die Spalten, die als übergeordnete und untergeordnete Spalten in der Beziehung fungieren.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. Nachdem Sie eine DataRelationserstellt haben, können Sie Sie zum Navigieren zwischen den Tabellen und zum Abrufen von Werten verwenden.After you have created a DataRelation, you can use it to navigate between tables and to retrieve values.

Beim Hinzufügen einer DataRelations zu einer DataSet wird der übergeordneten UniqueConstraint Tabelle ForeignKeyConstraint standardmäßig ein hinzugefügt.Adding a DataRelation to a DataSet adds, by default, a UniqueConstraint to the parent table and a ForeignKeyConstraint to the child table. Weitere Informationen zu diesen Standard Einschränkungen finden Sie unter databel-Einschränkungen.For more information about these default constraints, see DataTable Constraints.

Im folgenden Codebeispiel wird eine DataRelations mithilfe von DataTable zwei-Objekten DataSetin einem erstellt.The following code example creates a DataRelation using two DataTable objects in a DataSet. Jede DataTable enthält eine Spalte mit dem Namen " CustId", die als Link zwischen DataTable den beiden Objekten dient.Each DataTable contains a column named CustID, which serves as a link between the two DataTable objects. Im Beispiel wird der Beziehungs Auflistung von DataSeteine einzelne DataRelations hinzugefügt.The example adds a single DataRelation to the Relations collection of the DataSet. Das erste Argument im Beispiel gibt den Namen der zu erstellenden DataRelations an.The first argument in the example specifies the name of the DataRelation being created. Mit dem zweiten Argument wird die übergeordnete datacolumschlag festgelegt, und das dritte Argument legt die untergeordnete datacolumschlagfest.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"]);  

Eine DataRelations verfügt auch über eine geschachtelte Eigenschaft, die bei Festlegung auf truebewirkt, dass die Zeilen aus der untergeordneten Tabelle in der zugeordneten Zeile aus der übergeordneten Tabelle geschachtelt WriteXml werden, wenn Sie mithilfe von als XML-Elemente geschrieben werden.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 . Weitere Informationen finden Sie unter Using XML in a DataSet (Verwenden von XML in einem DataSet).For more information, see Using XML in a DataSet.

Siehe auchSee also