utilisateurs:comment joindre plusieurs tables à la fois en utilisant linq to sql?
userid name email
1 venkat [email protected]
2 venu [email protected]
3 raghu [email protected]
Partenaires:
id userid partnerid status
1 1 2 1
2 1 3 1
Lieu:
id userid lat lon
1 1 12.00 13.00
2 2 14.00 12.00
3 3 14.00 14.23
Requête:
var result = from partner in Partners
join user in Users on partner.UserId equals user.PartnerId
join location in Locations on patner.UserId equals location.PartnerId
where partner.UserId == 1
select new { PartnerId = partner.PartnerId, PartnerName = user.Name, Lat = location.Lat, Lon = location.Lon };
en passant userid=1
comme paramètre que je reçois ce résultat:
partnerid patnername lat lon
2 venkat 14.00 12.00
3 venkat 14.00 14.23
par l'observation des résultats ci-dessus ici partnernames sont mauvais pour partnerid = 2
- patname
était venu
mais l'affichage "Venkat"
Pour partnerid = 3
, Le nom d'utilisateur était raghu
mais affichait venkat
.
Comment afficher les bons noms de partenaires?