Join multiple linq et dataset
Bonjour,
Je rencontre un gros soucis, sur lequel je bloque depuis quelques heures ..
J'ai un dataset qui comporte 4 tables. J'ai une table principale qui comporte des éléments (dont une clé primaire) et 3 tables annexes. Les 3 tables sont indépendantes mais comportent des caractéristiques par rapport à la clé primaire de la table principale.
J'aimerais faire une requête qui récupére tous les enregistrements où
table1.cléprimaire = table2.ID && ( || ?)
table1.cléprimaire = table3.ID && ( || ?)
table1.cléprimaire = table4.ID && ( || ?)
J'ai tenté cette requête :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| var requete = from A in table1.AsEnumerable()
//from C in table3.AsEnumerable()
join B in table2.AsEnumerable()
on A["TPLNR"] equals B["TPLNR"]
join C in table3.AsEnumerable()
on A["TPLNR"] equals C["TPLNR"]
//where A["TPLNR"] == B["TPLNR"] || A["TPLNR"] == C["TPLNR"]
join D in table4.AsEnumerable()
on A["TPLNR"] equals D["TPLNR"]
select new
{
BEBER = A.Field<string>("BEBER"),
EVENT = A.Field<string>("EVENT"),
UNIT_FROM = B.Field<string>("UNIT_FROM"),
VALUE_FROM = C.Field<string>("VALUE_FROM")
}; |
Cependant cela me retourne 0 enregistrement. Par contre si je laisse seulement une seule jointure entre A et B, ca fonctionne .. c'est la jointure multiple qui fonctionne pas :(
En sql je sais faire, mais j'ai du mal à traduire :/ J'ai regardé beaucoup de tuto, mais souvent pas de join multiple, ou alors leur solution ne fonctionne pas chez moi, je dois louper une étape ..
Merci !