Adicionando DataRelations
Em um DataSet com vários DataTable objetos, você pode usar DataRelation objetos para relacionar uma tabela a outra, navegar pelas tabelas e retornar linhas filho ou pai de uma tabela relacionada.
Os argumentos necessários para criar um DataRelation são um nome para o DataRelation que está sendo criado e uma matriz de uma ou mais DataColumn referências às colunas que servem como as colunas pai e filho na relação. Depois de criar um DataRelation, você pode usá-lo para navegar entre tabelas e recuperar valores.
Adicionar um DataRelation a um DataSet adiciona, por padrão, um UniqueConstraint à tabela pai e um ForeignKeyConstraint à tabela filho. Para obter mais informações sobre essas restrições padrão, consulte Restrições de DataTable.
O exemplo de código a seguir cria um DataRelation usando dois DataTable objetos em um DataSetarquivo . Cada DataTable um contém uma coluna chamada CustID, que serve como um link entre os dois DataTable objetos. O exemplo adiciona um único DataRelation à coleção Relations do DataSet. O primeiro argumento no exemplo especifica o nome do DataRelation que está sendo criado. O segundo argumento define o pai DataColumn e o terceiro argumento define o filho 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"]);
Um DataRelation também tem uma propriedade Nested que, quando definida como true, faz com que as linhas da tabela filho sejam aninhadas dentro da linha associada da tabela pai quando escritas como elementos XML usando WriteXml . Para obter mais informações, consulte Usando XML em um DataSet.