Tables liées et Datagrid

roinou Messages postés 21 Date d'inscription dimanche 8 mai 2005 Statut Membre Dernière intervention 7 novembre 2005 - 23 sept. 2005 à 19:57
roinou Messages postés 21 Date d'inscription dimanche 8 mai 2005 Statut Membre Dernière intervention 7 novembre 2005 - 28 sept. 2005 à 10:49
Bonjour à tous,



J'ai un petit souci avec mes DataGrids. Je cherche a afficher les
liaison entre deux tables dans une DataGrid. Un exemple pour tout
comprendre :

2 tables, Commande et Client

Commande contient : IDCOMM, MONTANT, IDCLIENT

Client contient : IDCLIENT, NOM, ADRESSE



Il existe une liaison entre IDCLIENT de Commande et de Client.



Toute cette structure est bien évidemment dans un DataSet typé.



Maintenant je veux pouvoir afficher dans un datagrid une ligne par
commande. Cette ligne doit montrer les details du client, i.e. le
DataGrid doit afficher 4 Colonnes : IDCOMM, MONTANT, NOM, ADRESSE.

Certaines lignes auront donc le même nom et la même adresse.

J'ai beau retourner le problème dans tout les sens, impossible de trouver.



Quelqu'un aurait'il une solution?

Merci d'avance

2 réponses

Paxcal Messages postés 42 Date d'inscription samedi 24 août 2002 Statut Membre Dernière intervention 3 octobre 2005
24 sept. 2005 à 02:06
Bonjour,

Il serait plus simple de créer un autre typed dataset qui recoit la jointure des 2 tables.
Plus simple et plus efficient en termes de performances.

Pascal
0
roinou Messages postés 21 Date d'inscription dimanche 8 mai 2005 Statut Membre Dernière intervention 7 novembre 2005
28 sept. 2005 à 10:49
La solution que j'ai retenue n'est pas la meilleure à mon avis mais bon...

En fait j'ai créé une table représentant la jointure dans mon dataset.
Cette table est remplie lorsque je load les données dans les autres
tables. Comme je ne travaille qu'avec ma nouvelle table, j'ai
simplement ajouté un eventHandler pour mettre a jour les tables
principales lors d'un changement.



Voila, je trouve que .net a un très gros défaut sur ce point, j'espère qu'ils modifieront sa par la suite.



PS : désolé de ne pas valider ta réponse Pascal, mais la solution ne me semble pas très bonne.
0
Rejoignez-nous