2013-01-13 12 views
5

Ho scritto una query LINQ con 'o' condizione e 'e', ​​ma non funziona bene.query Linq 'e' 'o' operatori

Non riesco a capire perché non funziona, qualcuno può aiutarmi a risolvere questo problema?

+4

Puoi essere più specifico di "non funziona bene". Quale output ti aspetti e quale output stai ottenendo? – ChrisF

risposta

31

solo provare come questo, è necessario utilizzare parentesi per raggruppare le condizioni

from x in db.fotoes.Where(x => x.uid == NewsId && 
(x.ukat == 'fukat1' || x.ukat == 'fukat2')) 
8

gruppo vostre condizioni di parentesi aggiungendo,

from x in db.fotoes.Where(x => (x.uid == NewsId) && 
         (x.ukat == 'fukat1' || x.ukat == 'fukat2')) 
3
from x in db.fotoes.Where(x => x.uid == NewsId && (
x.ukat == 'fukat1' || x.ukat == 'fukat2')) 

E 'quello che si sta cercando di fare? È possibile raggruppare una serie di condizioni facendole racchiudere tra parentesi.