2010-12-15 7 views
0

J'ai 2 DataTables DT1 et DT2 supposons que chaque table ne comporte qu'une seule ligne. Comment puis-je joindre les 2 données dans une table DT3?
comme exemple: DT1 a 2 colonnes FirstN, LastN
DT2 a 2 colonnes salary, currency
Par conséquent DT3 aura FirstN, LastN, salary, currencyComment joindre des DataTables dans C#

+0

Cela pourrait aider à: http: // support.microsoft.com/kb/326080/en-us –

Répondre

0

D'abord obtenir toutes les colonnes de DT1 et DT2 et ajouter les dans dt3, après avoir ajouté des colonnes dans dt3 commencer à insérer la valeur en utilisant pour boucle sur dt1 et dt2 de sorte que vous obtenez chaque ligne de ces datatable et en utilisant le nom des colonnes qui sont déjà dans ces datatable vous obtenez le spe valeur spécifique.

Dans ce lien vous obtenez comment insérer la valeur dans datatable

http://msdn.microsoft.com/en-us/library/system.data.datatable.aspx

Mark ma réponse et me pointer si vous obtenez une solution de ma réponse.

1

Pouvez-vous essayer et voir si cela fonctionne pour vous? Ce n'est pas exactement le cas d'utilisation prévu pour Merge mais je pense que cela pourrait fonctionner dans ce cas.

DT1.Merge (DT2, true, MissingSchemaAction.Add) 

Remarque: Je n'ai jamais fait cela. Mais je pense que basé sur la façon dont Merge est mis en œuvre, vous pouvez être en mesure de s'en tirer avec cela.

De MSDN Lorsque la méthode de fusion est appelée, les schémas des deux objets DataTable sont comparés, car il est possible que les schémas peuvent avoir été modifiés. Si le DataTable source contient des éléments de schéma (objets DataColumn ajoutés) qui manquent dans la cible, les éléments de schéma peuvent être ajoutés à la cible en définissant l'argument missingSchemaAction sur MissingSchemaAction.Add. Dans ce cas, le DataTable fusionné contient le schéma et les données ajoutés.

+0

Juste eu à tester cela et cela fonctionne ... très bien :) –