Condividi tramite


Aggiunta di DataRelations

In un DataSet oggetto con più DataTable oggetti è possibile utilizzare DataRelation oggetti per correlare una tabella a un'altra, spostarsi tra le tabelle e restituire righe figlio o padre da una tabella correlata.

Gli argomenti necessari per creare un DataRelation sono un nome per il DataRelation che si sta creando e una matrice di uno o più DataColumn riferimenti alle colonne che fungono da colonne padre e figlio nella relazione. Dopo aver creato un oggetto DataRelation, è possibile usarlo per spostarsi tra tabelle e recuperare i valori.

Aggiunta di un oggetto DataRelation a un DataSet oggetto aggiunge, per impostazione predefinita, un UniqueConstraint oggetto alla tabella padre e un ForeignKeyConstraint oggetto alla tabella figlio. Per altre informazioni su questi vincoli predefiniti, vedere Vincoli DataTable.

Nell'esempio di codice seguente viene creato un oggetto DataRelation usando due DataTable oggetti in un oggetto DataSet. Ogni DataTable contiene una colonna denominata CustID, che funge da collegamento tra i due DataTable oggetti. Nell'esempio viene aggiunto un singolo oggetto DataRelation all'insieme Relations dell'oggetto DataSet. Il primo argomento nell'esempio specifica il nome dell'oggetto DataRelation da creare. Il secondo argomento imposta l'oggetto DataColumn padre e il terzo argomento imposta l'oggetto DataColumn figlio.

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"]);  

Un oggetto DataRelation dispone inoltre di una proprietà Nested che, se impostata su true, fa sì che le righe della tabella figlio vengano annidate all'interno della riga associata dalla tabella padre quando vengono scritte come elementi XML utilizzando WriteXml . Per altre informazioni, vedere Uso di XML in un oggetto DataSet.

Vedere anche