web-dev-qa-db-fra.com

LINQ Join avec plusieurs conditions ET

Je souhaite joindre deux entités dans mon application MVC pour le traitement de données via la jointure LINQ.

Pour cela j'essaye d'écrire la requête comme,

from enumeration in db.Enumerations
join cust in db.Customers on ( enumeration.Value equals cust.lkpStatus &&       
enumeration.EnumerationTypeID.Contains('Cust')

Mais je commence à avoir un problème avec cette requête, alors donnez-moi une suggestion à ce sujet.

6
Rahul_RJ

Essayez cette solution:

from enumeration in db.Enumerations.Where(e => 
                                          e.EnumerationTypeID.Contains('Cust'))
join cust in db.Customers on enumeration.Value equals cust.lkpStatus
select enumeration;
8
alexmac

La jointure devrait être faite comme ceci:

var joinQuery =
from t1 in Table1
join t2 in Table2
  on new { t1.Column1, t1.Column2 } equals new { t2.Column1, t2.Column2 }
...
22
IDeveloper

Celui-là?

var data =     from c in db.Enumerations
               from d in db.Customers
               where c.Value.Equals(d.lkpStatus)
               && c.EnumerationTypeID.Contains('Cust')
               select c;
3
praga2050

Cela marche

var data = from c in db.Enumerations from d in db.Customers where c.Value==d.lkpStatus && c.EnumerationTypeID.Contains('Cust') select c;
0
user10921782