2011-11-11 3 views
1

J'ai deux DataTables. Je veux faire un joint interne les dans une nouvelle table de données. Il n'y a pas d'accès à la base de données.Jointure interne avec DataTables

Les premières colonnes des tables de données sont des champs clés.

string ParentKeyColumn = dt1.Columns[0].ColumnName; 
string ChildKeyColumn = dt2.Columns[0].ColumnName; 

De plus, j'utilise des composants Devexpress.

Comment est-ce que je peux faire ceci?

Répondre

2

Jetez un oeil à this blog post on social.msdn.

détails clés:

Définir une clé primaire:

dt2.PrimaryKey = new DataColumn[] { dt2.Columns["Deptno"] }; 

Définir une relation de données et l'ajouter à votre ensemble de données:

DataRelation drel = new DataRelation("EquiJoin", dt2.Columns["Deptno"], dt1.Columns["Deptno"]); 

ds.Relations.Add(drel); 
+0

Merci James. Mais je n'ai pas de colonnes uniques. Im obtenant l'erreur à cette ligne; dt2.PrimaryKey = new DataColumn [] {dt2.Columns ["Deptno"]}; : Ces colonnes n'ont actuellement pas de valeurs uniques. – Jack

+0

J'ai supprimé la ligne PrimaryKey et cela a fonctionné .. Merci – Jack