LINQ Join Where Clause
Je suis aux prises avec une jointure/clause where avec ce qui est plutôt une simple instruction sql select.
Je suis en train d'extraire une liste d'informations sur les produits de tb1 avec la condition where derrière situé dans tbl2, mais ce doit être rejoint par trois colonnes différentes.
de sorte que le SQL devrait ressembler à quelque chose le long des lignes de:
SELECT tb1.*
FROM tb2 INNER JOIN
tb1 ON tb2.Col1 = tb1. Col1 AND tb2.Col2 = tb1. Col2 AND
tb2.Col3 = tb1.Col3
WHERE (tb2.Col1 = col1) AND (tb2.Col2 = col2) AND (tb2.Col4 = string)
ColX est la principale clause where avec la chaîne de caractères passée en paramètre; toutes les autres colonnes sont au sein de contextes.
Comment voulez-vous mettre en œuvre plusieurs jointures avec une clause where?
Et l'enfourne dans la bonne direction, muchly apprécié.
source d'informationauteur Ricardo Deano
Vous devez vous connecter pour publier un commentaire.
Rejoindre sur plusieurs domaine dans LINQ, vous devez créer un nouveau type anonyme contenant les colonnes que vous souhaitez comparer et ensuite utiliser ce type anonyme dans la jointure:
Et ici, c'est l'équivalent Lambda Syntaxe:
Comme vous pouvez le voir, dans le cas de jointures, de la syntaxe de requête produit habituellement plus facile de lire l'énoncé.
Vous pouvez également inclure la clause where dans lamda syntaxe dans la référence à la table que vous êtes le rejoindre sur.
Semble évident aujourd'hui, n'est-ce pas? Il m'a fallu beaucoup de temps pour trouver une solution.