Except with Linq

Alcune volte può capitare che abbiate bisogno di vedere quali elementi di una collezione non siano inclusi in un’altra collezione.  (NOT IN)

Per esempio: Il classico libretto universitario

  • ho una lista di esami da sostenere per quanto riguarda il mio corso di laurea
  • ho una lista di esami che ho già sostenuto
  • voglio la lista degli esami da sostenere

il risultato in codice

IList<Esame> esami = InQualcheModoRecuperoTuttiGliEsamiDelMioCorsoDiLaurea(); :-)

IList<Esame> esamiSostenuti = InQualcheModoRecuperoTuttiGliEsamiSostenuti();

var esamiDaSostenere = from r in esami
where esamiSostenuti.All(m => m.Id != r.Id)
select r;

et voilà! :-) ho escluso dalla lista, di tutti gli esami, quelli che ho sostenuto

ps: Ovviamente nel mio caso ho previsto che gli esami fossero identificati da un id

pps: Mi scuso per l’indentazione

Published 9 ott 2009 21:10 da Nezumi
Inserito sotto:

Commenti

venerdì 9 ottobre 2009 23.44 da Michele Aponte

# re: Except with Linq

Ho creato un mostro...

sabato 10 ottobre 2009 23.25 da Liccardi Antonio

# re: Except with Linq

non posso far altro che confermare...