2011-10-05 15 views
6

Ho 3 tabelle e ho creato relazioni con ciascuna di esse.C# DataSet.Relations: Come utilizzare le relazioni DataSet?

let fare: tabella 1 presenta: aID, BID, CID, someText e someNumber

tabella 2 presenta: BID, txtValueTable2, someText

tabella 3 presenta: Cid, txtValueTable3, someText

po 'di codice:

ds.Relations.Add("BrandNameStr", ds.Tables[1].Columns["bID"], ds.Tables[0].Columns["bID"]); 
      ds.Relations.Add("IngredientStr", ds.Tables[2].Columns["cID"], ds.Tables[0].Columns["cID"]); 

Ora io wa nt per usare le colonne su tutte e 3 le tabelle per creare 1 set di dati, ma non so come?

Il set di dati deve avere le seguenti colonne: AID, txtValueTable2, txtValueTable3, someText e someNumber

qualcuno può aiutarmi?

risposta

4

Here c'è un buon esempio.

In poche parole è necessario utilizzare il metodo DataTabel.GetChildRows().

Here sono esempio lavorando

+0

Questo non è quello che sto cercando. Voglio sapere come ottenere un DataSet con questo nuovo layout di colonna. Questo esempio stampa solo le relazioni, è facile da fare. Sto lottando con la costruzione del nuovo DataSet. – Remco

+0

penso che non puoi ottenere il set di dati senza scrivere del codice, e la pace del codice ti mostro punto nel modo giusto ... invece di stampare il valore delle righe figlio puoi creare nuovi dati e aggiungere le righe figlio . Quindi devi creare un nuovo set di dati con un nuovo datatable che contenga tutte le colonne che vuoi e aggiungere la riga di dati in fase di esecuzione ... o un modo semplice è usare un datagrid master/dettaglio e associare il set di dati con le relazioni – 2GDev

+0

OK, questo esempio non è abbastanza chiaro per me, non so ancora come creare un nuovo DataSet? Non ho nemmeno paura di scrivere codice. Ma non mi auguro quando ho 100 colonne e solo la 2a e 3a colonna devono essere sostituite con le colonne delle altre tabelle che devo scrivere 100 volte "column.add()"? – Remco

0

Hi è necessario cambiare da questo:

ds.Relations.Add ("BrandNameStr", ds.Tables [0] .COLONNE [ "bid"], ds. tabelle [1] .COLONNE [ "bid"]);

+0

aggiungi un commento che spiega la ragione per questa modifica. – phoenix

Problemi correlati